docker常用命令
启动一个容器
docker run -itd -m 10g --name python3 --restart=always --net host -v /root/python_env:/root/python_env docker.io/python:3.6.8
-itd
其中-d:后台启动;-t:进入终端;-i:获得一个交互式的连接--name
给镜像取一个别名--privileged=true
使container内的root拥有真正的root权限。--restart=always
当docker启动时,自动重启容器,always可以换成任意int值,代表重启几次-m 10g
限制内存10g-p port1:port2
-p是publish的缩写不是port,用于开放端口,作用类似于防火墙,port1是外部服务器端口,port2是容器端口;也可以-p 53:53/tcp
只映射tcp或者udp,不写tcp/udp默认映射所有-v path1:path2
本地文件路径:容器文件路径--net host
使用宿主网络-e username="yalong"
添加到环境变量
容器停止/删除
docker stop/rm containerId
进入/退出一个容器
docker exec -it containerId /bin/bash
exit
,ctrl+D
内存限制
-m 3m
限制3M
示例(运行python容器,限制10G): docker run -itd -m 10g --name python3 --restart=always --net host -v /root/python_env:/root/python_env docker.io/python:3.6.8
查看内存限制
在容器内执行 cat /sys/fs/cgroup/memory/memory.limit_in_bytes
磁盘I/O限制
1、–device-read-bps
限制Docker容器每秒磁盘读的速度
2、–device-read-iops
限制Docker容器每秒磁盘读的I/O
3、 --device-write-bps
限制Docker容器每秒磁盘写的速度
4、–device-write-iops
限制Docker容器每秒磁盘写的I/O
网络
--net xxx
,--network xxx
host
,容器与宿主共用网络bridge
,桥接网络,此时要记得暴露服务端口none
,无网络自定义的
,比如下面定义的my-net,就可以使用--net my-net
在run的时候加入网络
多个容器互通网络
docker network create my-net
# 创建了一个名为"my-net"的网络docker network connect my-net server-a
a服务连接docker network connect my-net server-b
b服务连接docker network connect my-net server-c
c服务连接docker network inspect my-net
#查看桥接网络信息
查看网络信息
docker network ls
可以列出所有的网络信息,比如上述的四种网络模式和他们的NETWORK ID
查看某个网络模式里有哪些容器
docker inspect {NETWORK ID}
查看某个容器的信息
docker inspect {container ID}
你要是觉得写的还不错,就点个关注,可以评论区留下足迹,以后方便查看.
你要是觉得写的很辣鸡,评论区欢迎来对线!
欢迎转载!