返回

一键将 Spring Boot 和 Vue 项目部署到远程服务器上的 Linux Docker 指南

见解分享

使用 Docker 部署 Spring Boot 和 Vue 项目到远程服务器的终极指南

先决条件

想要踏上 Docker 部署之旅,确保以下先决条件已就位:

  • Linux 服务器,做好迎接 Docker 的到来
  • Docker 已安装,铺平部署之路
  • 你的 Spring Boot 项目,作为部署的明星
  • 你的 Vue 项目,准备闪耀登场
  • 远程服务器的 SSH 访问权限,打开远程部署的大门

第 1 步:打造你的 Docker 镜像

想象一下 Docker 镜像,它们是你应用程序的便携式家园。让我们为你的 Spring Boot 和 Vue 项目创建一个:

  1. 在 Spring Boot 项目目录中,键入以下命令,开启构建过程:
docker build -t spring-boot-image .
  1. 为 Vue 项目重复这一步,使用:
docker build -t vue-image .

第 2 步:让你的镜像踏上远程之旅

现在,是时候让你的 Docker 镜像踏上远程服务器的旅程了:

  1. 通过 SSH 登录到你的远程服务器,开启远程部署之路。
  2. 创建一个目录来存放你的 Docker 镜像,为它们准备一个温馨的家:
mkdir docker-images
  1. 使用以下命令,将 Spring Boot 和 Vue 镜像推送到远程服务器:
docker push spring-boot-image:latest docker-user/spring-boot-image:latest
docker push vue-image:latest docker-user/vue-image:latest

第 3 步:在远程服务器上点亮你的容器

在远程服务器上,让我们为你的应用程序创建 Docker 容器,它们是你应用程序在 Docker 世界中的活跃实例:

  1. 首先,为 Spring Boot 容器输入以下命令,赋予它生命:
docker run -d --name spring-boot-container -p 8080:8080 docker-user/spring-boot-image:latest
  1. 然后,为 Vue 容器重复此过程,使用:
docker run -d --name vue-container -p 80:80 docker-user/vue-image:latest

第 4 步:Nginx 反向代理的魔法

为了让用户访问你的应用程序,我们需要让 Nginx 反向代理发挥它的魔力。它将流量巧妙地路由到你的 Spring Boot 和 Vue 容器:

  1. 在远程服务器上安装 Nginx,为反向代理铺平道路:
sudo apt-get update
sudo apt-get install nginx
  1. 创建一个 Nginx 配置文件,告诉它如何处理流量:
sudo nano /etc/nginx/sites-available/your-domain.conf
  1. 添加以下配置:
server {
    listen 80;
    server_name your-domain.com;

    location /api {
        proxy_pass http://localhost:8080;
    }

    location / {
        proxy_pass http://localhost:80;
    }
}
  1. 启用 Nginx 配置并重新启动 Nginx,让反向代理发挥作用:
sudo ln -s /etc/nginx/sites-available/your-domain.conf /etc/nginx/sites-enabled/your-domain.conf
sudo systemctl restart nginx

第 5 步:目录权限的细微调整

为了让你的应用程序访问数据,我们需要调整目录权限:

sudo chown -R 1000:1000 /data/jenkins_home/

结论

恭喜!你已成功地将你的 Spring Boot 和 Vue 项目部署到远程服务器上的 Linux Docker。现在,你可以通过你的域名访问你的应用程序,享受 Docker 带来的简化部署和可移植性。拥抱 Docker 的力量,释放你的应用程序的潜力!

常见问题解答

1. 如何更新我的应用程序?

  • 使用 docker-compose up -d --build 命令重建容器,将最新更改部署到服务器。

2. 如何查看容器日志?

  • 使用 docker logs 命令查看特定容器的日志输出。

3. 如何停止和启动容器?

  • 使用 docker stop 命令停止容器,使用 docker start 命令启动容器。

4. 如何访问容器的终端?

  • 使用 docker exec -it /bin/bash 命令进入容器的终端。

5. 如何删除容器和镜像?

  • 使用 docker rm 命令删除容器,使用 docker rmi 命令删除镜像。