6、Docker容器的常用命令
版权声明:原创作品,谢绝转载!否则将追究法律责任。 ————— 作者:kirin
docker image下面都属于镜像有关命令
docker container下面属于容器有关命令
docker network 都是属于网络有关命令
docker volume 都属于卷,存储等相关命令
几乎所有命令都是可以缩写的
例如:docker run ==> docker container run
docker run创建并运行容器(例子:docker run -d -it -p 80:80 nginx:latest)
docker run的时候所有参数必须写在镜像名称前面,否则会报语法错误!!
[root@docker02 ~]# docker run
演示:(准备启动人生中第一个容器吧)
[root@docker01 ~]# docker run -it centos:7
[root@8ade774387ed /]#
-I ##交互式
-t ##终端
-it ##合起来就是分配一个交互式的终端
这个启动的容器是最小化安装的,查看网卡配置信息的命令都没有,需要优化系统哟~
退出当前的容器是exit
docker ps 查看容器列表
-a 查看所有容器
-l 只显示最新的、运行时间最短的容器
[root@docker01 ~]# docker container ps -a (不加-a参数就是只显示正在运行的容器)
第一列:是容器的id号
第二列:是镜像名称
第三列:容器的初始命令
第四列:容器的创建时间
第五列:容器的状态
第六列:是否做了端口映射
第七列:容器的名字
再次执行 docker run -it centos:7 会发现启动了一个新的容器,之前在上一个容器装的命令新容器里并不能运行,如何解决这个问题呢?只能是在底层修改镜像。
[root@docker01 ~]# docker run -it centos:7
docker create 创建容器 –name(默认是随机创建名字,名字不能相同)
[root@docker01 ~]# docker contain er create nginx:latest
docker start 启动容器,可以接名字也可以接id号码
docker stop 停止容器,可以接名字也可以接id号码
docker restart 重启容器,可以接名字也可以接id号码
docker run ==> docker create + docker start(所以一般都是用docker run )
docker rm 删除容器(不能删除正在运行中的容器)
[root@docker01 ~]# docker rm ffe962a05172
#docker rm -f可以强制删除正在运行中的容器
[root@docker01 ~]# docker rm -f determined_cori
~~~sh
![](https://img2022.cnblogs.com/blog/2757997/202206/2757997-20220603100742204-1773406901.png)
~~~sh
#批量删除所有容器 docker rm -f `docker ps -a -q` (也可以像下面那样在后面多接几个容器的id号码或名字都可以)
[root@docker01 ~]# docker rm -f a57e16a1733a eac05eb0547b
[root@docker01 ~]# docker rm -f `docker ps -a -q`
如何进入一个正在运行中的容器?两种方法:
docker attach 进入正在运行的容器(使用相同的终端),偷偷离开的快捷键ctrl +p,ctrl +q
docker exec 进入正在运行的容器(分配一个新终端)
例子: docker exec -it 容器id/容器名字 /bin/bash(/bin/sh)
##所以,使用docker exec才是最合理的,exec会分配一个新的终端
容器想要放在后台一直运行的话那么容器的初始命令,必须夯住(前台运行),否则容器就会退出
[root@docker01 ~]# docker run -d -it centos:7 tail -f /etc/hosts
-d 参数是在后台运行
#不加-d参数会在前台夯住,能夯住就能一直运行
运行nginx的容器是bebian的系统,所以yum就不能用了,需要用apt-get
root@9997e1decb89:/# cat /etc/os-release
root@4f8d5a50ea37:/# apt-get update
root@4f8d5a50ea37:/# apt-get install -y procps
root@4f8d5a50ea37:/# ps aux
nginx -g ‘daemon off;’ (意思是让nginx在前台运行,并且夯住)
/usr/sbin/php-fpm –nodaemonize
/usr/sbin/sshd -D
本文来自博客园,作者:kirin(麒麟),转载请注明原文链接:https://www.cnblogs.com/kirin365/articles/16137775.html