docker容器的常用命令
1.创建并启动容器
例子:docker run -d -it -p 80:80 nginx:latest
-d 后台运行
-it interactive 分配一个交互终端
-p 宿主机端口:容器端口
2.启动容器
例子:docker start 容器id
3.停止容器
例子:docker stop 容器id
4.重启容器
例子:docker restart 容器id
5.强制停止容器
例子:docker kill 容器id
6.查看容器列表
#查看所有容器 [root@docker01 ~]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8bf2be88b9b3 nginx:latest "nginx -g 'daemon of…" 3 minutes ago Exited (0) 3 minutes ago strange_hofstadter #查看最近创建的容器 [root@docker01 dockerfile]# docker ps -a -l CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cfe7da481990 centos7_nginx:v2 "nginx -g 'daemon of…" 46 hours ago Up 46 hours 0.0.0.0:80->80/tcp elated_nash #查看最近创建的容器的执行全部命令 [root@docker01 dockerfile]# docker ps -a -l --no-trunc CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cfe7da481990b59b8d967a45dc11a354a9d1aeff7e39c75d740da2443646115e centos7_nginx:v2 "nginx -g 'daemon off;'" 46 hours ago Up 46 hours 0.0.0.0:80->80/tcp elated_nash
7.删除容器
docker rm 容器id #批量删除所有容器 docker rm -f `docker ps -a -q` -f 强制删除(正在运行的容器)
8.查看容器日志
例子:docker logs 容器id
9.进入守护态启动的容器(分配一个新终端)
例子: docker exec -it 容器id/容器名字 /bin/bash(/bin/sh)
10.进入非守护态启动的容器(使用同一个终端)
例子: docker attach 容器id/容器名字 如果使用ctrl+d退出会导致容器停止 正常退出快捷键ctrl +p + ctrl +q
11.查看持久化目录
例子:docker volume ls #持久化目录所在位置 /var/lib/docker/volumes/
12.拷贝宿主机文件到容器
例子:[root@docker01 ~]# docker cp /etc/hosts cfe7da481990:/tmp /etc/hosts 宿主机文件绝对路径 cfe7da481990 容器id /tmp 容器目录
13.docker服务启动,容器始终开启
例子:[root@docker01 ~]# docker run -d --restart=always kod:v6 --restart=always 容器始终参数
14.查看docker容器网络模式
[root@docker01 ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
2e44090ae9df bridge bridge local
4432d41fcf56 host host local
a2e63a998a4a none null local
2b0f87210447 zabbix_default bridge local
15.查看docker容器详细信息
[root@docker01 ~]# docker inspect 2e44090ae9df [ { "Name": "bridge", "Id": "2e44090ae9df5a8d008501397af5a570dc1b25595eb01b75a7f27f55be30374b", "Created": "2020-03-04T13:58:06.04815127+08:00", "Scope": "local", "Driver": "bridge", "EnableIPv6": false, "IPAM": { "Driver": "default", "Options": null, "Config": [ { "Subnet": "172.17.0.0/16", "Gateway": "172.17.0.1" } ] }, "Internal": false, "Attachable": false, "Ingress": false, "ConfigFrom": { "Network": "" }, "ConfigOnly": false, "Containers": { "04dd35c8105930f115e46d24c20a54bae7874a6f11fb51e209b71c3e10e672d0": { "Name": "registry", "EndpointID": "3cb69ed4c02c7d5de136b945edea4552c17c1e2df18878b334c96233c3842b6f", "MacAddress": "02:42:ac:11:00:02", "IPv4Address": "172.17.0.2/16", "IPv6Address": "" } }, "Options": { "com.docker.network.bridge.default_bridge": "true", "com.docker.network.bridge.enable_icc": "true", "com.docker.network.bridge.enable_ip_masquerade": "true", "com.docker.network.bridge.host_binding_ipv4": "0.0.0.0", "com.docker.network.bridge.name": "docker0", "com.docker.network.driver.mtu": "1500" }, "Labels": {} } ]
PS:容器想要放在后台一直运行的话,那么容器的初始命令,必须夯住(前台运行),否则容器
就会退出
例如:
#nginx前台运行
nginx -g 'daemon off;'
#php前台运行
/usr/sbin/php-fpm --nodaemonize
未完待续……
赞赏
微信赞赏
支付宝赞赏