在阿里云ECS云服务器上安装、配置及高效使用Docker与Docker Compose

目录


引言

在云服务器ECS上使用Ubuntu系统安装Docker及Docker Compose,是提升开发效率、简化部署流程的重要步骤,下面是在阿里云ECS云服务器上安装、配置及高效使用Docker与Docker Compose的文章以及体验感受分享。

需求介绍

Docker及其生态工具Docker Compose成为了构建、运行和管理容器化应用的首选。在云服务器ECS上,通过Ubuntu系统安装Docker及Docker Compose,可以满足快速部署、弹性扩展和高效管理的需求,为开发者和运维人员提供便捷的开发和运维环境。

使用步骤

安装Docker

  • 执行以下命令安装Docker社区版本
powershell 复制代码
#更新包管理工具
sudo apt-get update
powershell 复制代码
#添加Docker软件包源
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
powershell 复制代码
sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
#安装Docker社区版本,容器运行时containerd.io,以及Docker构建和Compose插件
sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
powershell 复制代码
#启动Docker
sudo systemctl start docker
#设置Docker守护进程在系统启动时自动启动
sudo systemctl enable docker
  • 通过查看Docker版本命令,验证Docker是否安装成功。
powershell 复制代码
sudo docker -v

配置镜像源

当Docker Hub镜像拉取受网络影响时,可配置Docker镜像源提升速度。但请注意,镜像源配置不适用于docker search命令,因为它直接查询Docker Hub。

需要编辑Docker的配置文件/etc/docker/daemon.json,如果该文件不存在,您需要创建它。

powershell 复制代码
{
    "registry-mirrors": ["<加速器地址>"]
}            

完成编辑后,保存文件并退出。然后,为了使新的配置生效,您需要重启Docker服务。这可以通过执行以下命令来完成。

powershell 复制代码
sudo systemctl restart docker
  • 创建简单Web程序镜像
    以下是创建基于Nginx镜像的简单Web程序镜像。

构建Web程序镜像。

powershell 复制代码
#拉取Nginx镜像
sudo docker pull nginx:latest
powershell 复制代码
#创建Dockerfile设置Nginx作为基础镜像,并在Web服务器的根目录创建一个显示Hello World!的index.html文件。
sudo tee Dockerfile <<-'EOF'
FROM nginx:latest
RUN echo 'Hello World!' > /usr/share/nginx/html/index.html
EOF
#构建镜像,镜像名称为hello-world
sudo docker build . -t hello-world:latest

启动Web程序镜像的容器,并且命名容器名称为jupiter。

powershell 复制代码
sudo docker run -d -p 80:80 --name jupiter jupiter:latest

执行curl http://localhost命令,验证Web程序是否正确显示jupiter。

安装Docker Compose

  • 如果参考的本文安装Docker,那么Compose插件将默认安装到您的实例中。您可以通过如下命令查看。
powershell 复制代码
sudo docker compose version

如果Compose插件未成功安装或您需要使用Compose独立版(docker-compose)可参考下面内容。

使用Docker Compose部署应用

以下是创建基于WordPress镜像的Web程序。

  • 创建Compose编排文件并启动WordPress服务。
powershell 复制代码
#创建编排文件,添加Mysql与WordPress
sudo tee docker-compose.yaml <<-'EOF'
version: '3.1'

services:
  wordpress:
    image: wordpress
    restart: always
    ports:
      - "80:80"
    environment:
      #数据库地址
      WORDPRESS_DB_HOST: db
      #数据库用户名
      WORDPRESS_DB_USER: wordpress
      #数据库密码
      WORDPRESS_DB_PASSWORD: 123456
      #数据库名称
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - wordpress:/var/www/html

  db:
    image: mysql:5.7
    restart: always
    ports:
      - "3306:3306"
    environment:
      #数据库名称
      MYSQL_DATABASE: wordpress
      #数据库用户名
      MYSQL_USER: wordpress
      #数据库密码
      MYSQL_PASSWORD: 123456
      #数据库ROOT用户密码
      MYSQL_RANDOM_ROOT_PASSWORD: '1'
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:
EOF
#启动服务容器。
sudo env "PATH=$PATH" docker compose up -d

使用感受

阿里云提供的实例配置灵活多样,能够满足不同规模和复杂度的应用需求。在性能表现上,无论是计算速度还是网络延迟,都展现出了卓越的能力,确保了业务的流畅运行。

操作界面友好直观,让我能够快速上手并进行实例的管理和配置。同时,阿里云提供的安全防护措施也给了我极大的信心,确保数据的安全性和业务的稳定性。

在使用过程中,我还深刻感受到了阿里云服务的可靠性和稳定性。即使在面对高并发访问或突发流量时,实例也能保持稳定的性能,没有出现明显的卡顿或崩溃现象。

总的来说,阿里云实例为我提供了一个强大、灵活且可靠的云计算环境,极大地提升了业务处理能力和运营效率。


相关推荐
徐福记c3 小时前
腾讯云短信
云计算·腾讯云
黎明晓月5 小时前
‌CentOS 7.9 安装 Docker 步骤
linux·docker·centos
忘忧人生5 小时前
docker 常用容器启动 docker-compose.yml 配置文件详解
docker·容器·docker compose
linux修理工5 小时前
centos 下dockers部署surveyking-docker开源考试系统
docker·容器·开源
码农客栈5 小时前
Docker 安装与使用
docker
黎明晓月7 小时前
CentOS 7.9 上安装 Docker Compose
linux·docker·centos
亚林瓜子7 小时前
Minio安装(Docker Compose方式)
运维·docker·容器·minio·compose
張萠飛7 小时前
Docker的常用镜像
运维·docker·容器
Craaaayon7 小时前
Docker基础-自定义镜像与容器网络
java·运维·网络·数据库·后端·docker·容器