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

发布于:2025-03-07 ⋅ 阅读:(13) ⋅ 点赞:(0)


引言

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

需求介绍

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

使用步骤

安装Docker

  • 执行以下命令安装Docker社区版本
#更新包管理工具
sudo apt-get update

在这里插入图片描述

#添加Docker软件包源
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common

在这里插入图片描述

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

在这里插入图片描述

#启动Docker
sudo systemctl start docker
#设置Docker守护进程在系统启动时自动启动
sudo systemctl enable docker

在这里插入图片描述

  • 通过查看Docker版本命令,验证Docker是否安装成功。
sudo docker -v

配置镜像源

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

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

{
    "registry-mirrors": ["<加速器地址>"]
}            

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

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

构建Web程序镜像。

#拉取Nginx镜像
sudo docker pull nginx:latest

在这里插入图片描述

#创建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。

sudo docker run -d -p 80:80 --name jupiter jupiter:latest

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

安装Docker Compose

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

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

使用Docker Compose部署应用

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

  • 创建Compose编排文件并启动WordPress服务。
#创建编排文件,添加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
  • 在浏览器中输入http://云服务器ECS实例的公网IP,访问WordPress。

使用感受

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

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

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

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



网站公告

今日签到

点亮在社区的每一天
去签到