如何在 Ubuntu 20.04 上安装和使用 Docker Compose

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: Docker Compose 是一个命令行工具,通过它你可以定义和编排多容器 Docker 应用,本文将为大家讲解如何在 Ubuntu 20.04 上安装最新版的 Docker Compose。

3.png镜像下载、域名解析、时间同步请点击 阿里巴巴开源镜像站

Docker Compose 是一个命令行工具,通过它你可以定义和编排多容器 Docker 应用。它使用 YAML 文件来配置应用服务器,网络和数据卷。Compose 通常被用来本地开发,单机应用部署,和自动测试。使用 Compose, 你可以定义一个可以运行在任何系统上的可移植应用环境。本文讲解如何在 Ubuntu 20.04 上安装最新版的 Docker Compose。

一、前提条件

二、在 Ubuntu 上安装 Docker Compose

Docker Compose 是一个二进制文件。安装非常简单直接。我们会将该文件下载到一个目录,并添加到系统的 PATH 环境变量,同时将该文件设置为可执行。

Docker Compose  软件包在官方的 Ubuntu 20.04 源仓库中可用,但是可能不是最新版本。

在写作这篇文章的时候,Docker Compose 最新的版本是1.25.5
在下载 Compose 之前,浏览 Compose 发布页面 并且检查是否有新版本可以下载。
使用curl将 Compose 文件下载到/usr/local/bin目录:

sudo curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

下载完成后,将该文件设置为可执行:

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

运行下面的命令验证是否安装成功并查看Compose 的版本:

docker-compose --version

输出界面如下:

docker-compose version 1.25.5, build b02f1306

三、Docker Compose 入门

接下来,我们将会使用 Docker Compose 来构建一个多容器 WordPress 应用。

  1. 创建一个项目目录:
mkdir my_app
cd my_app
  1. 打开你的文本编辑器,创建一个名为docker-compose.yml的文件,放在项目目录下:
nano docker-compose.yml
  1. 粘贴下面的内容:
version: '3'
services:
  db:
    image: mysql:5.7
    restart: always
    volumes:
      - db_data:/var/lib/mysql
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress
  wordpress:
    image: wordpress
    restart: always
    volumes:
      - ./wp_data:/var/www/html
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: password
    depends_on:
       - db
volumes:
    db_data:
    wp_data:

docker-compose.yml文件第一行指定了 Compose file的版本。这里有一些不同的 Compose 版本,每个版本支持指定的 Docker 发行版。

  1. 配置服务器,dbwordpress

当 docker-compose 运行,每个服务器运行一个镜像,创建一个独立的容器。
服务器可以使用 DockerHub 上可用的镜像,或者从 Dockerfile 文件本地构建的镜像。此外,还可以指定一些设置,例如:暴露端口,数据卷,环境变量,依赖,和其他的 Docker 命令。
在项目目录运行下面的命令来启动 WordPress 应用:

docker-compose up

Compose 会拉取镜像,启动容器,并且创建wp_data目录。
在你的浏览器中输入[http://0.0.0.0:8080/](http://0.0.0.0:8080/),你将会看到 Wordpress 安装屏幕。此时,WordPress 应用已经启动并且运行了,你可以开始安装主题或者插件了。你可以按CTRL+C来停止 Compose。
你还可以通过在 Compose 后面加上-d选项,以后台模式启动 Compose:

docker-compose up -d

使用ps选项,检查运行的服务:

docker-compose ps

输出如下:

Name                     Command               State          Ports        
----------------------------------------------------------------------------------
my_app_db_1          docker-entrypoint.sh mysqld      Up      3306/tcp, 33060/tcp 
my_app_wordpress_1   docker-entrypoint.sh apach ...   Up      0.0.0.0:8080->80/tcp

运行以下命令停止服务:

docker-compose stop

还可以使用down命令停止、移除应用容器和网络

docker-compose down

四、卸载 Docker Compose

卸载 Docker Compose,只需要简单删除二进制文件即可,输入以下命令:

sudo rm /usr/local/bin/docker-compose

五、总结

至此,我们已经向你展示如何在 Ubuntu 20.04 上安装 Docker Compose 。使用 Docker Compose 可以明显改善你的工作流程,提高你的工作效率。你可以使用 Docker Compose 定义一个开发环境,并且分享给项目合作者。

阿里巴巴开源镜像站 提供全面,高效和稳定的镜像下载服务。钉钉搜索 ' 21746399 ‘ 加入镜像站官方用户交流群。”

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
13天前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
142 77
|
2天前
|
NoSQL 关系型数据库 应用服务中间件
docker基础篇:安装tomcat
docker基础篇:安装tomcat
92 64
|
4天前
|
关系型数据库 MySQL 数据库
docker高级篇(大厂进阶):安装mysql主从复制
docker高级篇(大厂进阶):安装mysql主从复制
50 24
|
5天前
|
NoSQL 算法 Redis
docker高级篇(大厂进阶):安装redis集群
docker高级篇(大厂进阶):安装redis集群
53 24
|
10天前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
62 24
|
3天前
|
Ubuntu Linux Docker
Ubuntu22.04上Docker的安装
通过以上详细的安装步骤和命令,您可以在Ubuntu 22.04系统上顺利安装
42 11
|
1月前
|
缓存 Linux Docker
【最新版正确姿势】Docker安装教程(简单几步即可完成)
之前的老版本Docker安装教程已经发生了变化,本文分享了Docker最新版安装教程,其他操作系统版本也可以参考官 方的其他安装版本文档。
1087 2
【最新版正确姿势】Docker安装教程(简单几步即可完成)
|
12天前
|
关系型数据库 MySQL Docker
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
《docker高级篇(大厂进阶):5.Docker-compose容器编排》包括是什么能干嘛去哪下、Compose核心概念、Compose使用三个步骤、Compose常用命令、Compose编排微服务
77 6
|
1月前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
1月前
|
NoSQL Redis Docker
【赵渝强老师】使用Docker Compose管理容器
Docker Compose 通过 YAML 文件管理多个容器,简化复杂系统的部署和管理。本文介绍了 Docker Compose 的基本概念,并通过一个包含 Redis DB 和 Python Web 模块的示例,展示了如何使用 Docker Compose 部署和管理多容器应用。手动部署和 Docker Compose 部署的对比突显了 Docker Compose 在系统复杂度增加时的优势。
下一篇
DataWorks