
不听老人言,吃亏在眼前!
前辈们谆谆告诫,做运维,系统能运行,千万别清理系统垃圾!!!
可是忍不住啊😭😭😭。
这不,手滑切错路径,把compose配置文件删了。
容器还在跑,看看能不能恢复。
很高兴,我发现了这么一个宝贝:docker-autocompose
https://github.com/Red5d/docker-autocompose
自动从运行中的容器,生成对应的compose文件。
可以直接用容器运行此工具
从GitHub拉取镜像:
docker pull ghcr.io/red5d/docker-autocompose:latest
从容器名称或ID列表,打印 docker-compose 文件:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose <container-name-or-id> <additional-names-or-ids>...打印所有容器的 docker-compose :
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose $(docker ps -aq)把生成的内容保存到文件里,就可以用来启动容器了:

这里边包含了所用镜像、挂载的路径、网络配置、映射的端口等重要信息。
当然,有些内容,比如labels,environment,command、entrypoint 等是镜像自带的,不用手动设置,为了简洁可以手动删除。
还要注意 container_name 项,如果你的服务本身就是用docker compose 启动的,container_name可能是由docker compose 生成的,我们也不要 保留,删除即可。
希望能帮助到伙伴们!