2026 docker run启动的容器通过命令导出为docker-composer.yml文件

前提是别人通过docker run 启动的容器,我这里没有备份和命令,我怎么才能把docker run启动的所有容器通过命令导出为docker-composer.yml文件。

导出的命令有一个镜像是国外的镜像,点击这里下载

1.查看所有容器

复制代码
[root@ecs-63dd ~]# docker ps -a
CONTAINER ID   IMAGE                COMMAND                  CREATED          STATUS                     PORTS                                                                      NAMES
ac50c2418061   postgres:14          "docker-entrypoint.s..."   4 minutes ago    Up 4 minutes               0.0.0.0:5432->5432/tcp, :::5432->5432/tcp                                  postgres
547faaccb3af   redis                "docker-entrypoint.s..."   5 minutes ago    Up 5 minutes               0.0.0.0:6379->6379/tcp, :::6379->6379/tcp                                  redis
c87cb0da9c91   nginx                "/docker-entrypoint...."   5 minutes ago    Up 5 minutes               0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   nginx
759f4890ef2d   httpd                "httpd-foreground"       6 minutes ago    Up 6 minutes               0.0.0.0:8080->80/tcp, :::8080->80/tcp                                      httpd
992cc8710f0b   mysql:5.7            "docker-entrypoint.s..."   13 minutes ago   Up 13 minutes              0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp                       mysql57
[root@ecs-63dd ~]# 

2.一次性导出所有容器

复制代码
# 抓取全部容器ID,批量生成完整 compose 文件
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose:latest $(docker ps -aq) > all_container_compose.yml

[root@ecs-63dd ~]# ls
[root@ecs-63dd ~]# # 抓取全部容器ID,批量生成完整 compose 文件
[root@ecs-63dd ~]# docker run --rm -v /var/run/docker.sock:/var/run/docker.sock ghcr.io/red5d/docker-autocompose:latest $(docker ps -aq) > all_container_compose.yml
[root@ecs-63dd ~]# ls
all_container_compose.yml
[root@ecs-63dd ~]# 

3.删除所有容器

bash 复制代码
docker rm -f $(docker ps -a -q)  #强制删除所有容器

4.利用导出的文件启动容器

bash 复制代码
docker compose -f all_container_compose.yml up -d


docker compose up -d  

5.验证结果没有问题

bash 复制代码
[root@ecs-63dd ~]# ls
all_container_compose.yml
[root@ecs-63dd ~]# docker compose -f all_container_compose.yml up -d
WARN[0000] /root/all_container_compose.yml: `version` is obsolete 
[+] Running 5/5
 ✔ Container nginx     Started                                                                                                      1.1s 
 ✔ Container postgres  Started                                                                                                      0.9s 
 ✔ Container httpd     Started                                                                                                      1.2s 
 ✔ Container mysql57   Started                                                                                                      1.0s 
 ✔ Container redis     Started                                                                                                      0.7s 
[root@ecs-63dd ~]# docker ps -a
CONTAINER ID   IMAGE         COMMAND                  CREATED         STATUS         PORTS                                                                      NAMES
faff11adbecf   mysql:5.7     "docker-entrypoint.s..."   7 seconds ago   Up 6 seconds   0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp                       mysql57
0d8674d38ce4   nginx         "/docker-entrypoint...."   7 seconds ago   Up 6 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   nginx
46ef44ce45c7   httpd         "httpd-foreground"       7 seconds ago   Up 5 seconds   0.0.0.0:8080->80/tcp, :::8080->80/tcp                                      httpd
8895ed1c2515   redis         "docker-entrypoint.s..."   7 seconds ago   Up 6 seconds   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp                                  redis
d9c5ab39044a   postgres:14   "docker-entrypoint.s..."   7 seconds ago   Up 6 seconds   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp                                  postgres
[root@ecs-63dd ~]#

[点击并拖拽以移动]
​
相关推荐
风曦Kisaki9 小时前
#企业级docker私有仓库构建:harbor仓库与阿里云镜像仓库
阿里云·docker·容器
期待着20139 小时前
docker 安装 ,在centos7.9
运维·docker·容器
骑上单车去旅行12 小时前
Docker Compose 命令完全指南:从构建到运维
docker·容器·eureka
spider_xcxc13 小时前
K8s 部署学习笔记
docker·容器·kubernetes·云计算·k8s
java_logo13 小时前
Docker Compose 部署 Apache Superset:轻松搭建开源 BI 平台
docker·开源·apache·superset·轩辕镜像·superset部署方案·docker superset
zy happy13 小时前
VMware虚拟机添加新的硬盘
java·linux·jvm·docker
IT瑞先生1 天前
docker-compose下快速部署实操——持续更新...
运维·docker·容器
爱码少年1 天前
Docker遍历镜像生成导出镜像命令六法
docker·shell
BullSmall1 天前
Sonarqube9.9 docker 镜像启动后 conf 下的配置文件没有了
docker·容器·eureka
ruofu331 天前
wsl端是py312,但是项目是py311, 如何下载py311的依赖包(wheels)
python·docker