小米儿 發表於 2026-1-8 09:57:43

Docker Compose 两种安装与使用方案(适用于 Docker 19.03 版本)

<div id="navCategory"><h5 class="catalogue">目录</h5><ul class="first_class_ul"><li><a href="#_label0">前言</a></li><li><a href="#_label1">1. 方式一:独立二进制版(docker-compose)</a></li><ul class="second_class_ul"><li><a href="#_lab2_1_0">安装步骤</a></li><li><a href="#_lab2_1_1">特点</a></li><li><a href="#_lab2_1_2">优点</a></li><li><a href="#_lab2_1_3">缺点</a></li></ul><li><a href="#_label2">2. 方式二:CLI 插件版(docker compose)</a></li><ul class="second_class_ul"><li><a href="#_lab2_2_4">安装步骤(适用于 Docker 19.03+)</a></li><li><a href="#_lab2_2_5">特点</a></li><li><a href="#_lab2_2_6">优点</a></li><li><a href="#_lab2_2_7">缺点</a></li></ul><li><a href="#_label3">对比总结表</a></li><ul class="second_class_ul"></ul><li><a href="#_label4">结论与建议</a></li><ul class="second_class_ul"></ul></ul></div><p class="maodian"><a name="_label0"></a></p><h2>前言</h2>
<p>在实际运维中,我们经常会遇到不同机器上 Docker 版本不一致的情况,尤其是很多生产服务器还在运行较老的 Docker Engine 版本(如 19.03.x)。这时候安装 Docker Compose 就会有两种完全不同的方式:</p>
<ul><li><strong>方式一:独立二进制版(docker-compose,带连字符)</strong> &mdash;&mdash; 经典的 Compose V1</li><li><strong>方式二:CLI 插件版(docker compose,无连字符)</strong> &mdash;&mdash; 现代的 Compose V2/V5</li></ul>
<p>本文以 Docker 19.03.15(Ubuntu 20.04)为例,详细对比这两种方式的安装、使用和特点,帮助你快速选择适合自己的方案。</p>
<p class="maodian"><a name="_label1"></a></p><h2>1. 方式一:独立二进制版(docker-compose)</h2>
<p>这是最传统、最兼容的方式,适用于所有 Docker 版本(甚至非常老的版本)。</p>
<p class="maodian"><a name="_lab2_1_0"></a></p><h3>安装步骤</h3>
<div class="jb51code"><pre class="brush:bash;"># 下载 Compose V1 最后一个稳定版(1.29.2)
sudo curl -L https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
# 添加执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 验证
docker-compose --version
# 输出:docker-compose version 1.29.2, build 5becea4c</pre></div>
<p class="maodian"><a name="_lab2_1_1"></a></p><p class="maodian"><a name="_lab2_2_5"></a></p><h3>特点</h3>
<ul><li>命令:<code>docker-compose up -d</code>、<code>docker-compose --env-file .env up -d</code></li><li>完全独立于 Docker Engine,不依赖任何插件机制</li><li>支持 <code>--env-file</code> 多文件加载(你的需求完全满足)</li><li><code>docker info</code> 中不会显示 compose 插件信息</li><li>已被官方标记为&ldquo;维护模式&rdquo;(不再新增功能,但仍可正常使用)</li></ul>
<p class="maodian"><a name="_lab2_1_2"></a></p><p class="maodian"><a name="_lab2_2_6"></a></p><h3>优点</h3>
<ul><li>兼容性极强,几乎能在任何 Docker 版本上运行</li><li>安装简单、一行命令搞定</li><li>不需要升级 Docker Engine</li></ul>
<p class="maodian"><a name="_lab2_1_3"></a></p><p class="maodian"><a name="_lab2_2_7"></a></p><h3>缺点</h3>
<ul><li>命令带连字符(与新版不统一)</li><li>缺少 Compose V2 的新特性(如更好的 profiles、build secrets 支持)</li></ul>
<p class="maodian"><a name="_label2"></a></p><h2>2. 方式二:CLI 插件版(docker compose)</h2>
<p>这是 Docker 官方目前推荐的方式,Compose 作为 Docker CLI 的插件存在。</p>
<p class="maodian"><a name="_lab2_2_4"></a></p><h3>安装步骤(适用于 Docker 19.03+)</h3>
<div class="jb51code"><pre class="brush:bash;"># 创建用户级插件目录(推荐)
mkdir -p ~/.docker/cli-plugins
# 下载最新 Compose V2(当前推荐 v5.0.1,文件较大约60MB)
curl -SL https://github.com/docker/compose/releases/download/v5.0.1/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
# 如果下载慢,可加国内代理
# curl -SL https://ghfast.top//https://github.com/docker/compose/releases/download/v5.0.1/docker-compose-linux-x86_64 -o ~/.docker/cli-plugins/docker-compose
# 添加执行权限
chmod +x ~/.docker/cli-plugins/docker-compose
# 验证
docker compose version
# 输出:Docker Compose version v5.0.1
docker info | grep -i compose
# 输出:compose: Docker Compose (Docker Inc., v5.0.1)</pre></div>
<h3>特点</h3>
<ul><li>命令:<code>docker compose up -d</code>、<code>docker compose --env-file .env --env-file .env.other up -d</code></li><li>完全集成到 Docker CLI 中</li><li><code>docker info</code> 会明确显示 compose 插件信息(和其他机器一致)</li><li>支持所有新版 Compose 特性</li></ul>
<h3>优点</h3>
<ul><li>命令风格统一(docker compose、docker buildx 等)</li><li>获得最新功能和安全更新</li><li>官方主力维护方向</li></ul>
<h3>缺点</h3>
<ul><li>二进制文件较大(60MB vs V1 的 12MB)</li><li>手动安装稍复杂(需放到正确插件目录)</li><li>如果 Docker 版本过老(如 &lt;19.03),可能不被识别</li></ul>
<p class="maodian"><a name="_label3"></a></p><h2>对比总结表</h2>
<table><thead><tr><th>项目</th><th>方式一(V1 独立版)</th><th>方式二(V2 插件版)</th></tr></thead><tbody><tr><td>命令</td><td><code>docker-compose</code>(带-)</td><td><code>docker compose</code>(空格)</td></tr><tr><td>安装难度</td><td>极简单</td><td>稍复杂(需放插件目录)</td></tr><tr><td>文件大小</td><td>~12MB</td><td>~60MB</td></tr><tr><td>docker info 显示插件</td><td>不显示</td><td>显示 compose 插件版本</td></tr><tr><td>是否支持 --env-file</td><td>支持(多文件)</td><td>支持(多文件)</td></tr><tr><td>兼容 Docker 19.03</td><td>完美</td><td>完美</td></tr><tr><td>官方维护状态</td><td>维护模式(不再更新)</td><td>积极维护(持续更新)</td></tr><tr><td>推荐场景</td><td>快速解决、不想升级 Docker 的老服务器</td><td>追求统一体验、愿意接受新版本的团队</td></tr></tbody></table>
<p class="maodian"><a name="_label4"></a></p><h2>结论与建议</h2>
<ul><li><strong>如果你只想快速解决问题</strong>:强烈推荐方式一(独立二进制版)。一行命令安装,几秒钟搞定,功能完全够用。</li><li><strong>如果你追求和团队其他机器统一体验</strong>(docker info 显示插件、命令无连字符):使用方式二(插件版),效果和其他新机器完全一致。</li><li><strong>长期建议</strong>:找机会升级 Docker Engine 到最新版(28.x+),通过 <code>apt install docker-compose-plugin</code> 一键安装插件,彻底告别手动操作。</li></ul>
頁: [1]
查看完整版本: Docker Compose 两种安装与使用方案(适用于 Docker 19.03 版本)