docker.容器管理

第三节.docker容器管理
创建容器常用选项

指令
-i --interactive 交互式
-t --tty 分配一个伪终端
-d --detach 运行容器到后台
实例
docker container run -itd --name nginx-1 -p 8080:80 nginx:1.15
-a --attach list 附加到运行的容器
docker container attach 
--dns list 设置dns服务器
-e --env list 设置环境变量
docker container run -itd -e a=123 --name test nginx
docker exec -it test sh
echo $a
#123
--env-file list 从文件中读取环境变量
-p --publish list 发布容器端口到主机
实例
docker container run -itd --name nginx-1 -p 8080:80 nginx:1.15
-P --publish-all 发布容器的所有EXPOSE的端口到宿主机的随机端口
-h --hostname string 设置主机名
--ip string 指定容器IP,只能用于自定义网络
--link list 链接容器到另一个网络
--network 链接容器到一个网络
--mount mount 挂载宿主机分区到容器
-v --volume list 挂载宿主机目录到容器
--restart string 容器退出时重启策略,默认no[always|on-failure]
--add-host list 添加其他主机到容器中/etc/hosts
资源限制指令
-m --memory 容器可以使用的最大内存
--memory-swap 允许交互到磁盘的内存量
--memory-swappiness=<0-100> 容器使用swap分区交换的百分比
--memory-reservation 内存软限制,docker检测主机容器征用内存在内存不足时激活软限制,使用此选项,值必须设置低于--memory,以使其优先
--oom-kill-disable 当宿主机内存不足时,内核会杀死容器中的进程。建议设置了-memory选项再禁用OOM。如果没有设置,主机可能会耗尽内存
--cpus 限制容器可以使用多少可用的cpu资源
--cpuset-cpus 限制容器可以使用的特定CPU
--cpu-shares 此值设置为大于或小于默认1024值,以增加或减少容器的权重,并使其可以访问主机CPU周期的更大或更小比例

管理容器常用命令

ls 列出容器
docker container ls 
inspect 显示一个或多个容器详细信息
docker container inspect 
attach 附加本地标准输入,输出和错误到一个运行的容器
exec 在运行的容器中执行命令
commit 创建一个新的镜像来自一个容器
docker commit  #将容器提交成一个镜像
cp 拷贝文件/文件夹到一个容器
docker container cp  :/root #或其他目录
logs 获取一个容器的日志
查看容器日志
docker logs nginx
ls /var/lib/docker/containers/
port 列出指定容器的端口映射
docker container port nginx-1
80/tcp -> 0.0.0.0:8080
stats 显示容器资源使用统计
内存利用率
docker container stats 
top 显示一个容器运行的进程
docker container top nginx-1
UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
root                26656               26640               0                   00:13               pts/0               00:00:00            nginx: master process nginx -g daemon off;
101                 26692               26656               0                   00:13               pts/0               00:00:00            nginx: worker process
update 更新一个容器或多个容器配置
动态设置容器使用资源
docker container update --help
stop/start
rm

进入容器的俩种方法

docker container attach +容器ID
这样就能进入容器了,但是要注意,用这个方法发退出容器的时候,容器会停止,所以退出时要选择Ctrl+P+Q退出容器。
一般情况下使用:docker exec -it +容器ID +env
也能进入容器,这个方法退出容器,容器是不会停止的。
export导出容器文件系统到tar归档文件
实例
[root@data tmp]# docker export 726f3213bc55 > busybob.tar
import导入容器文件系统tar归档文件创建镜像(默认会多一个名字为none的镜像)
实例
[root@data tmp]# docker export 726f3213bc55 > busybob.tar
[root@data tmp]# docker image import busybob.tar
sha256:9b5f74e2b0beca2b775780d404fd67b9bd65c652661ea59bc178136850785ca9
[root@data tmp]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
                            9b5f74e2b0be        7 seconds ago       108MB
nginx               1.15                8c9ca4d17702        2 days ago          109MB
nginx               latest              8c9ca4d17702        2 days ago          109MB
docker image import busybob.tar busybob:self #设置仓库和标签
第三节.docker容器管理.png

你可能感兴趣的:(docker.容器管理)