前言最近在工作中,接手了不少历史遗留的项目,有一些依赖是使用的Docker启动,可以正常使用 。但是由于优化服务器资源的缘故,需要将这些依赖迁移到其他服务器,这时候问题出现了 。此类依赖都是直接使用docker run启动一个容器运行,没有使用docker-compose这样的编排工具,也没有保存docker run的命令,给迁移造成了麻烦 。如果我们无法找到docker run的启动参数,那么迁移完成后,有大概率会出现不一致的情况 。
那么,能不能找回之前的run命令呢,答案是可以的 。
方法很多,笔者一般使用的是runlike命令来查看 。
安装pip【查看运行容器的docker run启动参数】# yum install -y Python-pip
安装runlike# pip install runlike
命令安装完成,下面来看一下如何通过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 8080tcp600 :::8080:::*LISTEN5357/docker-proxy# docker psCONTAINER IDIMAGECOMMANDCREATEDSTATUSPORTSNAMES76a49h8f017cnginx:1.18"nginx -g 'daemon of…"2 seconds agoUp 2 seconds0.0.0.0:8080->80/tcpnginx
使用runlike查看启动参数格式:runlike -p <容器名>|<容器ID>
# runlike -p nginxdocker 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=truenginx:1.18nginx -g 'daemon off;'
至此,再也不用担心找不到docker run参数了 。
后记工作中经常遇到此类需求,顺便记录下,供之后翻阅,养成好习惯^_^
推荐阅读
- 解密微信电脑版dat文件解码解密查看方法
- Google Chrome 现已可以通过地址栏运行更多命令
- 这两个Python工具真香!修改代码不会影响运行
- linux系统上查看载体为实体机还是虚拟机
- WPS中如何同时查看多个工作表的内容?
- C++程序同时使用同一个库的不同版本,为什么运行时崩溃了?
- 如何查看Linux的IP地址
- 22千瓦电机电流50A可以用吗?15kw电机运行电流只有10几A电流-
- 一次解决mysql锁表问题的经历
- 怎么查看电脑配置?这4种方法一定要学会