SpringCloud-基于Docker和Docker-Compose的项目部署

本文详细介绍了如何利用Docker和Docker-Compose实现项目的高效部署。首先,初始化环境,包括卸载旧版本的Docker、更新系统和安装必要的依赖项。然后,设置国内的Docker镜像源(如腾讯云、阿里云或清华大学),以加快镜像下载速度。接下来,安装指定版本的Docker和Docker-Compose,并配置镜像加速器来优化性能。之后,将项目代码上传至服务器,修改docker-compose.yml文件以符合项目需求。最后,使用Docker Compose初始化项目,启动并管理容器,实现项目运行。

一、初始化环境

1. 卸载旧版本

首先,卸载可能已存在的旧版本 Docker。如果您不确定是否安装过,可以直接执行以下命令:

sudo yum remove docker \
                docker-client \
                docker-client-latest \
                docker-common \
                docker-latest \
                docker-latest-logrotate \
                docker-logrotate \
                docker-engine

2. 更新系统

更新系统信息:

sudo yum update -y
001 1024x584 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

3. 安装 Docker 所需的依赖

sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2
002 1024x651 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

二、设置 Docker 镜像源

为加快下载速度,建议使用国内的 Docker 镜像源。

1. 腾讯云镜像源

sudo yum-config-manager \
    --add-repo \
    https://mirrors.cloud.tencent.com/docker-ce/linux/centos/docker-ce.repo

2. 清华大学镜像源

sudo yum-config-manager \
    --add-repo \
    https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/centos/docker-ce.repo

3. 官方镜像源

速度较慢,且可能被墙

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
003 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

三、安装 Docker

1. 安装最新版本

sudo yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
004 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

2. 安装指定版本

如果需要安装特定版本的 Docker,可以先查询可用的版本列表:

yum list docker-ce --showduplicates | sort -r

根据查询结果,选择所需的版本(例如 26.0.0),然后执行:

sudo yum install -y docker-ce-<VERSION> docker-ce-cli-<VERSION> containerd.io

将 <VERSION> 替换为实际的版本号。

3. 启动并设置开机自启

sudo systemctl start docker
sudo systemctl enable docker
005 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

4. 验证安装结果

docker info

四、安装 Docker Compose

1. 添加 EPEL 源

sudo yum install -y epel-release
006 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

2. 安装 Docker Compose

sudo yum install -y docker-compose
007 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

3. 查看版本

docker-compose --version
008 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

五、配置镜像加速器

为了提高拉取镜像的速度,可以配置镜像加速器。

1. 腾讯云镜像加速器

编辑配置文件

sudo vim /etc/docker/daemon.json

添加以下内容

{
  "registry-mirrors": [
    "https://mirror.ccs.tencentyun.com"
  ]
}
009 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

2. 重启 Docker

sudo systemctl daemon-reload
sudo systemctl restart docker

3. 验证配置

docker info

在输出信息中,应该能看到配置的镜像加速器。


六、上传项目

根据项目需求,修改 docker-compose.yml 文件。将项目部署到根目录下的 docker 目录中。

010 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

七、使用 Docker Compose 初始化项目

1. 设置权限

sudo chmod -R 777 /docker

2. 进入项目目录

cd /docker

3. 创建并后台运行所有容器

docker-compose up -d
011 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

等待镜像下载、构建和容器启动完成。

012 1 1024x529 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

您可以使用以下命令查看容器状态:

# 查看镜像列表
docker images
013 1 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述
# 查看所有容器
docker ps -a
014 1 1024x170 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述
# 查看指定容器的日志
docker logs -f <容器名称>
015 1 1024x548 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

访问我们部署的项目地址。

016 1 1024x630 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

部署成功。

4. 更新容器

重新构建并启动容器(当代码有改动时)

docker-compose up --force-recreate --build -d <服务名称>
017 1 1024x571 - SpringCloud-基于Docker和Docker-Compose的项目部署
添加描述

将 <服务名称> 替换为 docker-compose.yml 中定义的服务名称。

重启容器(仅刷新)

docker restart <容器名称>
018 2 1024x260 - SpringCloud-基于Docker和Docker-Compose的项目部署
此条目发表在Java, JavaWeb分类目录,贴了, , , , 标签。将固定链接加入收藏夹。

发表回复