Docker容器操作常用指令
一、使用镜像创建一个容器
docker run
(1)、创建并运行一个java容器 打印一个Hello World
[root@wuduzhun ~]# docker run java:8 /bin/echo 'hello world'
hello world
(2)、创建Centos容器
docker run -di --name=c1 centos:centos7 /bin/bash
-d 表示守护式容器(用户退出容器后,容器依然可以正常的进行)
-t 交互 后面跟交互shell脚本 /bin/bash
-i 运行容器
centos:centos7 镜像的名称
(3)、有网络的使用容器 Nginx 80
docker run -di --name=n1 -p 88:80 nginx:latest
访问地址:http://192.168.1.31:88/
-p 88:80
-p 端口映射 宿主机端口 容器端口
二、列出容器
(1)、列出正在运行的容器
docker ps
(2)、列出当前全部的容器
docker ps -a
该表格包含了七列,含义如下:
① CONTAINER_ID:表示容器ID。
② IMAGE:表示镜像名称。
③ COMMAND:表示启动容器时运行的命令。
④ CREATED:表示容器的创建时间。
⑤ STATUS:表示容器运行的状态。Up表示运行中,Exited表示已停止。
⑥ PORTS:表示容器对外的端口号。
⑦ NAMES:表示容器名称。该名称默认由Docker自动生成,也可使用docker run命令的–name选项自行指定。
参数 -a 表示列出全部容器包括正在运行的和已经停止的
参数 -q 表示只显示容器的id
(3)、列出当前全部容器的编号
docker ps -a -q
三、停止容器
docker stop c1
docker stop 7ada6ca7a43a (ID地址)
四、启动容器
docker start 容器名称 或者容器编号
五、强制停止容器
docker kill 容器名称 或者容器编号
六、重启容器
docker restart 容器名称 或者容器编号
七、进出容器
(1)、进入容器
docker exec -it c1 /bin/bash
(2)、退出容器
exit
八、拷贝容器到容器
(1)、创建一个0819java.txt
touch 0819java.txt
(2)、编辑文件
vi 0819java.txt
(3)、拷贝0819java.txt到容器
docker cp 0819java.txt c1:/root/
(4)、查看文件内容
cat 0819java.txt
九、从容器拷贝文件回宿主机
docker cp c1:1.java /root/2.java
十、挂载宿主机 到指定的目录容器
docker run -di --name=c2 -v/root/html:/test0819 centos:centos7
docker run -di --name=c2 -v/root/html:/test0819 [--privileged=true] centos:centos7
--privileged=true 选择性
到容器c2
docker exec -it c2 /bin/bash
十一、删除容器
docker rm 容器的名字 //不能删除正在运行的容器
使用docker rm 命令即可删除指定容器。
执行命令1:docker rm 784fd3b294d7
删除指定容器,该命令只能删除已停止的容器,如需删除正在运行的容器,可使用-f参数。
执行命令2:docker rm -f $(docker ps -a -q)
删除所有的容器。
十二、导入导出容器
(1)、导出容器为备份文件
docker export --output="/root/c2.tar" c2
(2)、导入备份的文件为镜像
docker import /root/c2.tar ccc
十三、查看容器ip
(1)查询容器ip方式一
容器的名字或者编号
docker inspect n1
(2)查询容器ip方式二
容器的名字或者编号
docker inspect --format='{{.NetworkSettings.IPAddress}}' n1 (容器的名字)
十四、查看容器日志
docker logs n1
docker logs --tail="10" n1
//--tail="10" 查看最后10行