日常工作中可能会有一种情况,为了方便,直接使用docker run启动一个容器运行,没有使用docker-compose这样的编排工具,也没有保存docker run的命令,导致我们在迁移或者有修改的时候,有大概率会出现不一致的情况。
那么,能不能找回之前的run命令呢,答案是可以的。
方法很多,笔者一般使用的是runlike命令来查看。
安装pip
# yum install -y python-pip
安装runlike
# pip install runlike
查看docker run参数
发布一个测试容器
# docker run -d -v /data/nginx:/data/nginx -v /etc/hosts:/etc/hosts -p 8080:80 --name nginx nginx:1.18
# netstat -lntup | grep 8080
tcp6 0 0 :::8080 :::* LISTEN 5357/docker-proxy
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
76a49h8f017c nginx:1.18 "nginx -g 'daemon of…" 2 seconds ago Up 2 seconds 0.0.0.0:8080->80/tcp nginx
使用runlike查看启动参数
格式:runlike -p <容器名>|<容器ID>
# runlike -p nginx
docker run
--name=nginx
--hostname=76a49h8f017c
--env=PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
--env=NGINX_VERSION=1.18.3
--env=NJS_VERSION=0.3.9
--env='PKG_RELEASE=1~buster'
--volume=/data/nginx:/data/nginx
--volume=/etc/hosts:/etc/hosts
-p 8080:80
--restart=no
--label maintainer="NGINX Docker Maintainers <docker-maint@nginx.com>"
--detach=true
nginx:1.18
nginx -g 'daemon off;'
至此,再也不用担心找不到docker run参数了。
工作中多次遇到,故记录下。