1、Docker容器操作实践
以CentOS镜像为例
1.1、下载镜像(Image)
通过docker pull指令下载CentOS镜像,例如:
[root@localhost docker]# docker pull centos:7
说明,官方镜像仓库地址为https://hub.docker.com/
下载完以后,查看centos7镜像文件。
[root@localhost docker]# docker images
1.2、创建并启动容器(Container)
1.2.1、语法
[root@localhost docker]# docker run -it xxxx bash
其中:
1)xxxx - 镜像名, 或 image id 的前几位,
2)-it 这是两个参数(-i表示交互式操作, -t 表示终端)
3) bash 表示进入操作终端,基于交互式进行相关操作(例如执行linux相关指令)。
1.2.2、案例
1.3、停止容器(stop)
停止运行的容器,代码如下:
[root@localhost docker]# docker container stop 802 #802为容器自己的id
1.4、重启容器(Restart)
重新启动容器,代码如下:
[root@localhost docker]# docker container restart 802 #802位容器自己的id
1.5、查看Docker中的容器(Container)
1.5.1、查看docker中运行的容器
[root@localhost docker]# docker ps
说明,假如在容器中执行docker指令会出现如下问题,例如:
1.5.2、查看docker中的所有容器
[root@localhost docker]# docker ps -a
-a表示全部(all)
1.6、查看容器日志(logs)信息
查看容器启动运行日志时,这个指令非常重要,假如容器没有启动,要通过此指令去看一下错误日志。
[root@localhost docker]# docker container logs 802 #802为自己的容器id(一般写前三位即可)
说明,查看容器的运行日志时,容器应该处于一种运行状态.
1.7、进入(exec)指定容器(Container)
当容器处于运行状态,要进入容器,可以使用 docker exec 命令,例如:
[root@localhost docker]# docker exec -it 802 bash #802为容器id
说明,假如容器处于一种非运行状态,此时你执行docker exec进入容器会出现如下问题:
1.8、从容器(Container)中退出(exit)
假如从宿主机进入了启动的容器,退出容器需要使用exit指令,例如:
[root@localhost docker]# exit
1.9、删除(rm)容器(Container)
1.9.1、删除关闭的容器
假如容器不用了,可执行删除操作,例如:
[root@localhost docker]# docker container rm 802 #802为容器id
说明,假如容器正在运行执行删除,会出现如下问题,例如:
1.9.2、删除正在运行的容器
其中,如果删除运行中的容器,需要添加 -f 参数执行强制删除,例如:
[root@localhost docker]# docker container rm -f 802 #802为容器id
1.9.3、删除关闭的所有容器
清理所有处于终止状态容器,例如:
[root@localhost docker]# docker container prune
1.10、后台进入docker
1.10.1、后台启动docker容器
[root@localhost docker-install]# docker run -d tomcat:7
d3bb8c60607dab42a7d5998ddf73d31a2762690326754ceb7d69a602ab2e4e43
1.10.2、启动完成查看是否运行
[root@localhost docker-install]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
d3bb8c60607d tomcat:7 "catalina.sh run" 3 seconds ago Up 2 seconds 8080/tcp xenodochial_montalcini