docker 容器挂掉,无法exec 进入bash 怎么修改容器里的文件

在使用tdengine 数据库时出现了

TDengine.Driver.TDengineError:"code:[0x334],error:Out of dnodes"

查找文档发现需要修改一个配置文件 。

/etc/taos/taos.cfg 中的 supportVnodes 参数

于是修改

保存。然后,运行出错。

复制代码
03/21 06:56:27.986498 00000064 UTL apoll url not load
03/21 06:56:27.986572 00000064 UTL load from cfg file /etc/taos//taos.cfg success
03/21 06:56:27.986582 00000064 UTL env file:.env not load
03/21 06:56:27.986648 00000064 UTL load from env variables cfg success
03/21 06:56:27.986972 00000064 DND startup path:/root args:taosd
03/21 06:56:27.987547 00000064 UTL apoll url not load
03/21 06:56:27.987588 00000064 UTL ERROR cfg:supportVnodes, type:int32 src:cfg_file value:99990 out of range[0, 4096]
03/21 06:56:27.987707 00000064 UTL ERROR failed to load from cfg file /etc/taos//taos.cfg since Out of range
03/21 06:56:27.987716 00000064 UTL ERROR failed to load from cfg file:/etc/taos//taos.cfg since Out of range
03/21 06:56:27.987720 00000064 UTL ERROR failed to load cfg since Out of range
03/21 06:56:27.987733 00000064 DND ERROR failed to start since read config error
[root@t224yuntu1 ~]# docker exec -it tdengine /bin/bash
Error response from daemon: Container 2adfe16473d9885cd0b9a7e5668a051be711be5fcf6ab17f88a955f4f9b95a02 is not running

好吧。docker start不起来,exec bash进不去,造成无法再改里面的文件,已经玩坏了。由于数据很重要所以需要恢复。

采用了以下方式来恢复

1,docker ps --a 可以查到所有docker,包括没有运行的,找到containner ID

2,用docker CP命令,往出来拷文件,改好后,再拷进去 。

以tdengine 为例 docker ps -a | grep 'tdengine' 查找到tdengine 的内容

复制代码
[root@t224yuntu1 ~]# docker ps -a | grep 'tdengine' 2adfe16473d9 tdengine/tdengine:3.1.1.0 /tini -- /usr/bin/e... 5 hours ago Exited (255) 13 minutes ago tdengine 62e9559efb65 tdengine/tdengine:3.1.1.0 /tini -- /usr/bin/e... 23 hours ago Exited (129) 20 hours ago busy_snyder 9cc5cd51f171 tdengine/tdengine:3.1.1.0 /tini -- /usr/bin/e... 23 hours ago Exited (255) 23 hours ago vigilant_sammet e89a0b43d714 tdengine/tdengine:3.1.1.0 /tini -- /usr/bin/e... 23 hours ago Exited (255) 23 hours ago affectionate_jepsen 68b78dee050e tdengine/tdengine:3.1.1.0 /tini -- /usr/bin/e... 23 hours ago Exited (255) 23 hours ago fervent_hypatia 8579cc938163 tdengine/tdengine:3.1.1.0 /tini -- /usr/bin/e... 24 hours ago Exited (129) 23 hours ago angry_chatterjee

使用doker cp 来复制文件

复制代码
[root@t224yuntu1 ~]# docker cp tdengine:/etc/taos/taos.cfg /home Successfully copied 7.17kB to /home [root@t224yuntu1 ~]# cd /home [root@t224yuntu1 home]# ll 总用量 8 -rw-r--r-- 1 root root 5532 3月 21 14:56 taos.cfg

再次文件进行修改,

修改后将文件复制到docker 容器中

复制代码
[root@t224yuntu1 home]# docker cp taos.cfg tdengine:/etc/taos/taos.cfg Successfully copied 7.17kB to tdengine:/etc/taos/taos.cfg

再次使用 docker restart tdengine

查看OK

相关推荐
bwz999@88.com6 分钟前
联想SR5507X04安装ubuntu-24.04.4 server,采用 Linux 原生mdadm(mdraid)软 RAID+LVM分区
运维·服务器
Canicer11 分钟前
OpenClaw搭配Coze工作流实现全自动发布文章至WordPress网站!
运维·服务器
王小义笔记20 分钟前
WSL(Linux)如何安装conda
linux·运维·conda
Fairy要carry22 分钟前
面试10-Agent 团队协议的管理
运维·服务器·网络
袁庭新22 分钟前
M系列芯片Mac上通过Homebrew一键安装/卸载Nginx并上线项目全指南
运维·nginx·macos·袁庭新·袁庭新ai
偷懒下载原神29 分钟前
【linux操作系统】信号
linux·运维·服务器·开发语言·c++·git·后端
丘桔31 分钟前
k8s01:容器运行时之争
云原生·容器·kubernetes
源远流长jerry37 分钟前
RDMA 传输服务详解:可靠性与连接模式的深度剖析
linux·运维·网络·tcp/ip·架构
存储服务专家StorageExpert40 分钟前
NetApp NVME SSD 盘的学习笔记
运维·服务器·笔记·学习·存储维护·emc存储·netapp
小璐资源网43 分钟前
新服务器上线:标准化初始化流程
运维·服务器