docker container无法修改环境变量的处理办法

在维护一个产品时,尝试将公司的Docker演示移植到客户服务器,遇到容器频繁重启的问题,原因是容器内的MongoDB链接配置错误。经过一周排查,发现在/home/user/deploy目录下修改的配置并未影响其他目录,导致配置文件未更新。解决方案是停止Docker服务,直接编辑/var/lib/docker/containers/下的配置文件,然后重启Docker服务,问题得以解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在维护公司一个(即将)烂尾的产品,想把我们公司的提供演示的docker移植到客户的服务器里...

改完conf文件之后重启docker发现其中一个container频繁重启

使用sudo docker logs -f msic-html5之后发现频繁报错,意思是连不上mongodb服务器

 问题是我该改的配置文件都改了,以前没出现过这个问题啊...

这个问题带带拉拉查了一周没发现原因,昨天我docker inspect 的时候发现这个频繁重启的container里的环境变量中的mongodb链接是老的

问题可能出现在这里。所以我sudo docker run xx -e修改配置,结果失败

查资料之后发现可以修改配置文件

【docker】修改容器启动配置参数_渐暖°的博客-CSDN博客_docker修改启动参数

按照它修改之后重启container之后发现还是频繁重启,回头看一眼配置文件,发现配置文件被改回去了。

接着百度之后发现这个丁日东西需要先把docker关闭再修改才能生效

docker修改未能成功启动的容器中的配置文件_<Michael>的博客-CSDN博客

  1. 注意:在进行操作之前一定要先停掉docker服务,否则改动不会生效。修改之后再启动docker服务就可以了。

systemctl stop docker
sudo su
cd /var/lib/docker/containers/xxxx
vim config.v2.json
systemctl start docker

大概就这样,最后成功糊弄完客户....

最后想了一下这个问题的原因

应该和我之前修改ip的时候的目录有关

之前直接在/home/user目录里用sed命令修改ip

现在是在/home/user/deploy里用sed修改,导致只把/deploy里的修改了,其他目录没动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值