进入docker容器闪退,容器杀不掉

1 进入docker容器闪退问题:
容器里的前台进程挂了,而又设置了 restart=always 或是 restart=unless-stopped,就会反复在启动 -> 挂掉 -> 退出 -> 重启之间循环了。

如果你确定你这个镜像里有前台进程、或是你在 docker run 的时候指定了别的前台进程,那么你可以 docker inspect 看一下日志路径来进行分析。

我这里是通过先将启动的应用的报错代码(会引起panic,导致程序退出)注释掉,然后重新打包容器起起来,然后进入容器,修改好环境变量后,再恢复正常程序,再重新起一次服务,就ok啦


2 tried to kill container, but did not receive an exit event

docker-compose down 的时候 遇到:tried to kill container, but did not receive an exit event 这个问题,参考:
https://stackoverflow.com/questions/70434777/cannot-kill-container-container-id-tried-to-kill-container-but-did-not-rece了这些方法,感觉挺有用的,但是我没有按里边的方法做,
我使用mac,是通过打开docker desktop 客户端手动 关闭的,成功了
在这里插入图片描述

根据引用和引用的内容,当使用docker启动redis时出现闪退的问题可能是因为配置文件的错误修改导致的。有的用户可能会错误地修改了redis.conf文件,导致容器闪退。 为了解决这个问题,你可以按照以下步骤进行操作: 1. 下载并安装redis镜像:进入Docker Hub,搜索redis并确定要下载的版本。使用`docker pull redis:版本号`命令下载redis镜像。 2. 下载redis的配置文件:你可以从redis官网下载redis.tar.gz文件,并解压得到redis.conf文件。 3. 创建一个存放配置文件的目录:在你的主机上创建一个目录,比如/myredis/conf,用来存放redis.conf文件。 4. 将下载的redis.conf文件移动到上一步创建的目录中。 5. 使用docker启动redis容器:通过运行`docker run --name 容器名称 -v /myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf -d redis:版本号`命令来启动redis容器。这个命令将会将容器内的/usr/local/etc/redis/redis.conf文件与你在主机上创建的目录中的redis.conf文件进行映射。 通过这样的方式,你可以使用正确的配置文件启动docker中的redis容器,解决闪退的问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [docker安装redis并以配置文件启动(解决配置文件启动导致容器闪退问题)](https://blog.csdn.net/weixin_44861708/article/details/113852952)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值