docker & docker compose & 云效流水线

阿里云效流水线:Docker安装与Compose实战指南
本文详细介绍了如何在Linux系统中安装Docker,包括设置镜像源、启动与配置docker daemon,以及使用docker-compose进行项目部署。步骤包括切换用户权限、启用服务、启动和重启docker,以及通过curl下载并安装docker-compose。最后展示了从GitHub拉取代码并使用docker-compose进行自动化部署的过程。

docker

安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

安装之后直接执行docker ps 有下边的报错:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

这是因为docker service没有启动。

su root # 先切换到root用户, 再执行以下命令
systemctl enable docker # 开机自动启动docker

systemctl start docker # 启动docker
systemctl restart docker # 重启dokcer

docker compose

第一步

curl -L https://get.daocloud.io/docker/compose/releases/download/v2.4.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

第二步:将可执行权限应用于二进制文件

$ sudo chmod +x /usr/local/bin/docker-compose

第三步:创建软链

$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

测试是否安装成功

docker-compose --version

阿里云效流水线

  1. 从github拉取代码
  2. 打包
  3. 上传指定服务器,解压
  4. 进入指定目录,执行 docker-compose up
<think>嗯,用户再次询问docker-composedocker compose的区别,看来对这两个命令的差异确实存在困惑。根据用户提供的三篇站内引用,核心区别在于架构设计和版本演进,需要突出以下要点: 用户可能是在升级Docker版本时遇到了命令变化,或是看到不同教程使用了不同写法。ta的深层需求应该是想确认哪个命令更推荐使用,以及如何避免兼容性问题。从引用[1]看,用户已经接触到关键信息:docker-compose是独立二进制文件,而docker compose是19.03+的内置子命令。 需要特别强调安装方式的差异,因为引用[3]提到docker-compose需要额外安装步骤,而docker compose开箱即用。同时要提醒版本兼容性风险,引用[1]明确指出旧版本只能用docker-compose。用户可能是运维人员或开发者,所以补充迁移建议会很有帮助。 在解释架构区别时,用插件式设计vs独立工具来说明更直观。虽然引用[2][3]内容较简略,但可以结合引用[1]的细节展开:比如docker compose通过插件机制实现,所以命令响应速度更快,也不需要单独更新。 最后考虑是否需要提及未来趋势,因为官方推荐使用docker compose,但实际生产环境可能还需要兼容旧方案。在回答结尾特意强调"本质功能相同"能缓解用户的迁移焦虑。 </think>以下是 `docker-compose` 和 `docker compose` 的核心区别总结: --- ### 1. **架构与安装方式** - **`docker-compose`** - 独立可执行文件(如 `/usr/local/bin/docker-compose`) - 需**单独安装**(例如通过 `curl` 下载或包管理器安装) - 传统方式,兼容旧版 DockerDocker Engine < 19.03) - **`docker compose`** - Docker CLI 的**内置子命令**(`docker compose`) - 无需额外安装,随 Docker Desktop 或 Docker Engine 19.03+ 自动集成 - 作为插件实现(`docker-compose-plugin`) --- ### 2. **版本依赖与兼容性** | **命令** | 最低 Docker 版本 | 跨平台兼容性 | |------------------|------------------|-----------------------| | `docker-compose` | 无限制 | 支持所有 Docker 版本 | | `docker compose` | Docker 19.03+ | 仅新版本支持 | > 💡 **提示**: > - 若使用 Docker Desktop(Mac/Windows),默认已支持 `docker compose` > - Linux 需手动安装插件:`apt install docker-compose-plugin` --- ### 3. **功能与使用差异** | **特性** | `docker-compose` | `docker compose` | |----------------------|-------------------------------|--------------------------------| | 配置文件支持 | 仅兼容 `docker-compose.yml` | 额外支持 `compose.yaml` 简写 | | 命令响应速度 | 稍慢(独立进程) | 更快(原生 CLI 集成) | | 更新方式 | 需手动更新独立文件 | 随 Docker 引擎自动升级 | | 命令语法示例 | `docker-compose up -d` | `docker compose up -d` | --- ### 4. **官方推荐与趋势** - **`docker compose` 是官方主推方向**(更符合 Docker 生态一体化设计) - **`docker-compose` 仍被保留**: - 旧脚本/工具兼容 - 旧版 Docker 环境(如 CI/CD 流水线中未升级的服务器) --- ### ✅ 实践建议 ```bash # 优先使用新语法(若环境支持) docker compose up -d # 旧环境回退方案 docker-compose up -d # 检查当前环境可用性 docker compose version # 成功输出则表示支持 docker-compose --version ``` --- ### 本质总结 > 两者功能**完全等价**,区别仅在于: > - `docker-compose` = **独立工具**(兼容旧版) > - `docker compose` = **Docker 原生子命令**(现代推荐)[^1][^2][^3] ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

高级摸鱼工程师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值