将 Docker 命令转化为 Docker Compose 文件
创始人
2024-03-02 12:09:26
0

使用 Composerize 从 docker run 命令创建 Docker Compose 文件

如果你每天在正式或个人系统中使用 Docker,你应该知道有一个有用的应用叫 Composerize。在这个简短的指南中,我们将了解什么是 Composerize,以及如何使用 Composerize 在 Linux 中docker run 命令转换为 Docker Compose 文件格式。

什么是 Composerize?

Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。Docker Compose 只是一个 YAML 文件,我们在其中为 Docker 应用定义服务、网络和卷。

不是每个人都擅长写高效的 Docker Compose 文件。你们中的一些人可能会发现,甚至写一个简单的 Docker Compose 文件都很困难。不用担心! 看下 Composerize,它可以帮助你从 docker run 命令中创建 Docker Compose 文件。

Composerize 是一个命令行和基于网络的工具,可以将 docker run 命令转换成 Docker Compose 文件。

无论 docker run 命令是简单、简短还是冗长、复杂,都没有关系。你所要做的就是把命令传给 Conposerize。Composerize 会立即将 docker run 命令变成 Docker Compose 文件!

在 Linux 中安装 Composerize

Composerize 是作为一个网络服务提供的。所以你不需要在你的系统上安装它。如果你因为任何原因想在本地安装它,请继续阅读。

Composerize 可以用 npm 安装。确保你的系统中已经安装了 Nodejs。如果没有安装,请按照下面的链接来安装 Nodejs。

安装完 Nodejs 后,运行以下命令来安装 Composerize:

$ npm install composerize

该命令将只为当前用户安装 Composerize。

如果你想在全局(全系统)安装它,请运行上述命令并加上 -g 选项,如下所示。

$ npm install composerize -g

用 Composerize 将 Docker 命令转换为 Docker Compose 文件

要将 docker run 命令转换为 Docker Compose 格式,只需用 Composerize 运行它,如下所示:

$ composerize docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer

它将以 Docker Compose 文件格式生成内容。

示例输出:

version: '3.3'
services:
    portainer:
        ports:
            - '9000:9000'
        volumes:
            - '/var/run/docker.sock:/var/run/docker.sock'
        image: portainer/portainer

Convert Docker Run Commands Into Docker-Compose Files With Composerize

现在在你的 docker-compose.yml 文件中复制上面几行。就这么简单!

正如我所说,你也可以使用 Composerize 网络服务将 docker run 命令转换成 Docker Compose 格式。

进入 https://www.composerize.com/,将 docker run 命令粘贴到框中,你就会立即得到 docker-compose.yml 文件!

将命令转换为 Docker Compose 文件后,到你保存 docker-compose.yml 文件的位置,运行以下命令来启动 Docker 应用:

$ docker-compose up

Composerize 是对 Docker 用户有用的工具之一。你现在可以安全地告别漫无边际的 Docker 命令了。

资源:


via: https://ostechnix.com/convert-docker-run-commands-into-docker-compose-files/

作者:sk 选题:lkxed 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

相关内容

外媒初探Win11 WSL...
IT之家 7 月 2 日消息,科技媒体 Windows Lates...
2026-07-17 23:36:40
在CentOS系统中为Do...
理解Docker存储的核心机制:驱动与分层管理 在CentOS系统...
2025-06-16 07:41:58
Docker 4.42 版...
IT之家 6 月 12 日消息,科技媒体 linuxiac 昨日(...
2025-06-12 15:13:33
我的docker随笔39:...
本文介绍在容器中修改时间而不影响宿主机的系统时间。 问题提出 某容...
2025-06-01 18:45:21
【Docker】Netwo...
文章目录网络情况查看宿主机网络情况 `ifconfig&#...
2025-06-01 12:34:38
【Docker】Mysql...
文章目录安装mysql主从复制新建主服务器容器实例3307配置文件...
2025-05-31 14:48:56

热门资讯

“Linux 中国” 开源社区... 这是一个艰难的决定 —— 这不是调侃,而是当你真正做出改变了你十几年生活轨迹的决定时,你就会明白这个...
硬核观察 #1263 德国铁路... #1 德国铁路公司招聘 Windows for Workgroups 3.11 管理员该职位要求了解...
人工智能教程(七):Sciki... 在本系列的 上一篇文章 中,我们用 TensorFlow 构建了第一个神经网络,然后还通过 Kera...
关闭 WSL 中正在运行的 L... 以下是使用 WSL 关闭在 Windows 内运行的 Linux 系统的不同方法。你使用 WSL 在...
MX Linux 23.2 “... 最新的 MX Linux 23.2 小版本更新带来了基本的改进和新增功能。MX Linux 推出了 ...
硬核观察 #1262 网络上最... #1 网络上最古老的软件存档库之一即将关闭美国新墨西哥州立大学(NMSU)最近宣布,即将于 2024...
如何在 RHEL 上通过绑定配... 在 Linux 中,你可以根据自己的需要创建高级网络设置,如 网络绑定 Network Bondin...
Linux Matrix 消息... Matrix 用户可以升级 Fractal 6 了!Fractal 是目前 最好的 Matrix 客...
如何通过 VLC 使用字幕 使用 VLC 媒体播放器播放和管理字幕的新手指南。我是一个超级动漫迷,如果你想观看最新的剧集,那么你...
硬核观察 #1261 X 计划... #1 X 计划在奥斯汀建立内容审核总部据报道,该部门将招聘 100 名全职员工,将主要关注 CSE ...