Docker入门(三):容器命令

穿精又带淫゛_ 提交于 2019-11-29 21:31:30


Docker CE安装:https://blog.csdn.net/qq_39680564/article/details/86545098

一、容器生命周期管理

1.1 创建容器 docker run

说明
创建一个新的容器并运行一个命令
参数

-d:后台运行容器,并返回容器ID
-i:以交互模式运行容器,通常与 -t 同时使用
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用
-p:指定端口映射,格式为:主机端口:容器端口(可映射一组端口)
-v:指定目录映射,格式为:主机目录:容器目录
--name="newname": 为容器指定一个名称
--privileged :使用该参数,container内的root拥有真正的root权限
--rm:退出时自动删除容器

实例
后台运行一个centos镜像,映射主机的23306端口为容器的3306,主机的/data/mysql/目录为容器的/opt目录,容器名为centos7.6-mysql(注意:映射目录会导致容器被映射的目录格式化,最好不要映射/root目录)

docker run -it -d -p23306:3306 -v/data/mysql/:/opt/ --name centos7.6-mysql centos /bin/bash

将8080至8088这一组端口全部映射给容器的9080-9088

docker run -d -p8080-8088:9080-9088 liuli/centos7.6:base_images /usr/sbin/sshd -D

1.2 删除容器 docker rm

说明

删除一个或多少容器

参数

-f :强制删除一个运行中的容器

实例
强制删除容器centos7.6-mysql

docker rm  -f centos7.6-mysql

1.3 杀掉运行中的容器 docker kill

说明

杀掉一个运行中的容器

实例
杀掉运行中的 centos7.6-mysql

docker kill centos7.6-mysql

1.4 启动/关闭/重启容器

docker start :启动一个或多个已经被停止的容器
docker stop :停止一个运行中的容器
docker restart :重启容器

1.5 在运行的容器中执行命令 docker exec

说明

在运行的容器中执行命令

参数

-d:分离模式: 在后台运行
-i:即使没有附加也保持STDIN 打开
-t:分配一个伪终端

实例
以为交互模式进入容器centos7.6-mysql

docker exec -it centos7.6-mysql bash

二、容器操作

2.1 列出所有容器 docker ps

说明

列出容器

参数

-a:显示所有的容器,包括未运行的
-s:显示总的文件大小

实例
列出所有容器

docker ps -a

2.2 列出指定容器的端口映射 docker port

说明

列出指定的容器的端口映射

实例
查看容器centos7.6-mysql端口映射情况

docker port centos7.6-mysql	

三、容器根文件操作

3.1 从容器生成一个新的镜像 docker commit

说明

从容器创建一个新的镜像

参数

-a :提交的镜像作者
-m :提交时的说明文字

实例
将centos7.6-mysql容器添加作者“liuli”与提交信息“test”,命名为mysql,tag为v1,保存到镜像仓库

docker commit -a "liuli" -m "test" centos7.6-mysql mysql:v1
[root@localhost ~]# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
mysql               v1                  9cc96a2e4c98        15 seconds ago      202MB
centos              latest              9f38484d220f        2 months ago        202MB

3.2 主机与容器之间数据拷贝 docker cp

说明

用于容器与主机之间的数据拷贝

实例
将主机的文件1复制到centos7.6-mysql容器的/root目录下

docker cp 1 centos7.6-mysql:/root/

将主机的文件1复制到centos7.6-mysql容器的/root目录下,并重命名为2

docker cp 1 centos7.6-mysql:/root/2

将容器/root目录下的文件1复制到主机的/root

docker cp centos7.6-mysql:/root/1 /root/3
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!