文章目录
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
来源:CSDN
作者:刘李404not found
链接:https://blog.csdn.net/qq_39680564/article/details/90755392