Ubuntu安装docker-compose(摘自官网,自用)
安装 Docker Compose
预计阅读时间:8分钟
加速 Docker 桌面中的新功能
Docker Desktop 可帮助您在 Mac 和 Windows 上轻松构建、共享和运行容器,就像在 Linux 上一样。Docker 处理复杂的设置并允许您专注于编写代码。由于我们收到了订阅更新的积极支持,我们已经开始开发Docker Desktop for Linux,这是我们公共路线图中第二受欢迎的功能请求。如果您对抢先体验感兴趣,请注册我们的Developer Preview 计划。
此页面包含有关如何安装 Docker Compose 的信息。您可以在 macOS、Windows 和 64 位 Linux 上运行 Compose。
先决条件
Docker Compose 依赖 Docker Engine 进行任何有意义的工作,因此请确保根据您的设置,在本地或远程安装了 Docker Engine。
-
在 Docker Desktop for Mac 和 Windows 等桌面系统上,Docker Compose 包含在这些桌面安装中。
-
在 Linux 系统上,首先 按照获取 Docker 页面中的说明为您的操作系统安装 Docker 引擎,然后返回此处获取有关在 Linux 系统上安装 Compose 的说明。
-
要以非 root 用户身份运行 Compose,请参阅以非 root 用户身份管理 Docker。
安装 Compose
按照以下说明在 Mac、Windows、Windows Server 2016 或 Linux 系统上安装 Compose,或了解替代方案,例如使用pip
Python 包管理器或将 Compose 安装为容器。
安装不同的版本
下面的说明概述了 Compose当前稳定版本 ( v1.29.2 ) 的安装。要安装不同版本的 Compose,请将给定的版本号替换为您想要的版本号。有关在 Linux 上安装 Compose 2.0.0 的说明,请参阅在 Linux 上安装 Compose 2.0.0。
Compose 版本也在GitHub上的Compose 存储库发布页面上列出并可直接下载 。要安装Compose的预发布版本,请参阅安装预发布版本 部分。
在 Linux 系统上安装 Compose
在 Linux 上,您可以从GitHub 上的Compose 存储库发布页面下载 Docker Compose 二进制文件 。按照链接中的说明进行操作,其中包括curl
在终端中运行命令以下载二进制文件。这些分步说明也包含在下面。
对于
alpine
,需要以下依赖包:py-pip
,python3-dev
,libffi-dev
,openssl-dev
,gcc
,libc-dev
,rust
,cargo
和make
。
-
运行此命令以下载 Docker Compose 的当前稳定版本:
$ 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
要安装不同版本的 Compose,请替换
1.29.2
为您要使用的 Compose 版本。如果您在安装时遇到问题
curl
,请参阅 上面的替代安装选项选项卡。 -
对二进制文件应用可执行权限:
$ sudo chmod +x /usr/local/bin/docker-compose
注意:如果
docker-compose
安装后命令失败,请检查您的路径。您还可以/usr/bin
在路径中创建指向或任何其他目录的符号链接。
例如:
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
-
或者,安装命令完成了
bash
和zsh
外壳。 -
测试安装。
$ docker-compose --version docker-compose version 1.29.2, build 1110ad01
升级
如果您从 Compose 1.2 或更早版本升级,请在升级 Compose 后移除或迁移现有容器。这是因为,从 1.3 版开始,Compose 使用 Docker 标签来跟踪容器,并且您的容器需要重新创建以添加标签。
如果 Compose 检测到创建的没有标签的容器,它会拒绝运行,这样您就不会得到两组它们。如果您想继续使用现有容器(例如,因为它们有您想要保留的数据卷),您可以使用 Compose 1.5.x 使用以下命令迁移它们:
$ docker-compose migrate-to-labels
或者,如果您不担心保留它们,则可以删除它们。Compose 只是创建新的。
$ docker container rm -f -v myapp_web_1 myapp_db_1 ...
卸载
如果您使用curl
以下命令安装,则卸载 Docker Compose :
$ sudo rm /usr/local/bin/docker-compose
如果您使用pip
以下命令安装,则卸载 Docker Compose :
$ pip uninstall docker-compose