经过一整天的摸索,答案:
没法直接修改。只能另外创建。
但是还好不用完全重头来,用docker commit命令可以基于当前修改的内容创建一个新的image。
执行docker 看看帮助先:
Commands:
attach Attach local standard input, output, and error streams to a running container
build Build an image from a Dockerfile
commit Create a new image from a container's changes
牛逼不,这是官方的标准解答。
另,要善用于 docker stop,docker rm,来间接调试docker run的参数指令,只到配置全部ok,但要切记,第一句指令,必须是docker commit,先把当前的docker一定要commit下来 ,别直接给rm了。
来,干货开始:
首先,要commit wiki为wikiimage 作为备份。
[root@it-1c2d ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 3f6d2092f6ba requarks/wiki:latest "docker-entrypoint.s…" 7 weeks ago Up 20 hours 3443/tcp, 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp wiki fdfc369cacfa mysql:latest "docker-entrypoint.s…" 7 weeks ago Up 8 days 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql [root@it-1c2d ~]# docker stop wiki wiki [root@it-1c2d ~]# docker commit wiki wikiimage sha256:60b6c5427ae8b31e4f482536e19a62334c0d6ae0fa86c58977ed556c2531aaf0 [root@it-1c2d ~]#
然后,docker run一个新的名字的container,诸如wiki2,端口号也改成8085,先测试,测试没问题了,就rm掉。
[root@it-1c2d ~]# docker run -d -p 8085:3000 --name wiki2 --restart unless-stopped -e "DB_TYPE=mysql" -e "DB_HOST=10.0.0.17" -e "DB_PORT=3306" -e "DB_USER=root" -e "DB_PASS=vegasd" -e "DB_NAME=wiki" wikiimage cc463910d1f47256bd6bd4a9968dc830f29a228d8c8d96ed3b146165cf793e70 [root@it-1c2d ~]# docker stop wiki2 wiki2 [root@it-1c2d ~]# docker rm wiki2
最后,rm掉wiki,然后用正确的参数docker run,即可
[root@it-1c2d ~]# docker rm wiki wiki [root@it-1c2d ~]# docker run -d -p 8080:3000 --name wiki --restart unless-stopped -e "DB_TYPE=mysql" -e "DB_HOST=10.0.0.17" -e "DB_PORT=3306" -e "DB_USER=root" -e "DB_PASS=vegasd" -e "DB_NAME=wikinew" wikiimage c95b9e27054bc8d6b9cb46be56d646ebe52ee944e2a0e7664a327400a4c90556
相关文章
暂无评论...