若依前后端分离项目部署(使用docker)

由于之前做若依的二次开发项目,项目完成之后想部署到云服务器,折腾了好久才部署成功,所以总结下来,希望能帮到大家。

这里是使用docker进行部署的,如果想用别的方式部署,就需要友友网上再找找了。

这里做个规定:下面说到使用零件的意思就是使用下面我给出的资料,在对应资料有说明,友友要记得看,修改成自己的项目情况。

一、搭建后端

1.1 搭建流程:

  1. 首先需要把后端项目需要的程序先搭建好,如 mysql,redis(使用零件)

  2. 创建网桥(推荐根据项目命名),把mysql,redis和nginx(后面前端布置,现在先不用)放在一起

  3. 打包后端项目(后端项目的mysql和redis对应配置文件记得修改,如果放在一个网桥里面,可以使用网桥名称 )。

image-20241223094433308

  1. 在云服务器里面单独开一个文件夹(推荐使用项目相关名称命名),把后端项目上传到文件夹里面.(优点:便于管理)

  2. 在文件夹里面创建Dockerfile文件,填入对应零件内容(使用零件)

image-20241223090605902

  1. 构建镜像(使用零件)

  2. 创建后端容器(使用零件)

1.2 后端零件:

1.2.1 mysql容器创建:

这里设置的mysql密码为123,有需要的友友自己修改一下。

docker run -d \
  --name mysql \
  -p 3306:3306 \
  -e TZ=Asia/Shanghai \
  -e MYSQL_ROOT_PASSWORD=123 \  
  -v ./mysql/data:/var/lib/mysql \
  -v ./mysql/conf:/etc/mysql/conf.d \
  -v ./mysql/init:/docker-entrypoint-initdb.d \
  mysql

1.2.2 redis容器创建:

这里设置的redis密码为123456,有需要的友友自己修改一下。

docker run -d \
  --name redis \
### 使用 Docker 部署若依系统前后端分离教程 #### 安装必要的组件 为了顺利部署若依系统,需要先安装 DockerDocker Compose。可以通过阿里云镜像仓库来加速下载过程[^3]。 ```bash yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ``` 更新 yum 软件包索引并安装 Docker 引擎及相关工具: ```bash yum makecache fast yum install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin ``` 启动 Docker 服务并验证其状态: ```bash systemctl start docker docker version ``` #### 准备环境配置文件 对于若依系统的前端部分,通常会有一个 `nginx` 的配置文件用于反向代理请求至后端 API 接口;而后端则可能依赖 MySQL 数据库存储数据。因此建议创建如下结构的项目根目录 `/root/ruoyi-docker` 下面放置不同子模块所需的资源文件[^4]。 - `/root/ruoyi-docker/nginx`: Nginx 反代配置以及静态页面打包成果。 - `/root/ruoyi-docker/backend`: 后端应用及其依赖项(如 Maven 构建所需 jar/war 文件)。 - `/root/mysql/init`: 初始化 SQL 脚本路径,该位置下的 `.sql` 文件会在首次运行时自动执行以完成数据库表结构建立工作。 #### 编写 Dockerfile 或者 docker-compose.yml 文件 针对上述三个主要组成部分分别编写对应的构建描述文档或组合定义文件。下面给出一个简单的例子展示如何通过单个 `docker-compose.yml` 来管理整个应用程序栈: ```yaml version: '3' services: db: image: mysql:5.7 environment: MYSQL_ROOT_PASSWORD: rootpassword MYSQL_DATABASE: ruoyidb MYSQL_USER: user MYSQL_PASSWORD: password volumes: - /root/mysql/init:/docker-entrypoint-initdb.d ports: - "3306:3306" backend: build: ./backend depends_on: - db environment: SPRING_DATASOURCE_URL: jdbc:mysql://db:3306/ruoyidb?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8 SPRING_DATASOURCE_USERNAME: user SPRING_DATASOURCE_PASSWORD: password frontend: build: ./frontend depends_on: - "80:80" volumes: db_data: networks: default: driver: bridge ``` 此配置说明了如何设置 MySQL、后端 Java 应用程序和前端 Web 服务器之间的关系,并指定了它们之间通信所必需的一些参数。注意这里的 `depends_on` 字段用来指定服务间的依赖顺序,确保每次重启时都能按照正确的次序加载各个容器实例[^1]。 最后一步就是进入包含有 `docker-compose.yml` 文件所在的目录下执行命令启动所有关联的服务: ```bash cd /root/ruoyi-docker docker-compose up -d ``` 这将会以后台模式拉取必要镜像并依次启动各服务节点。此时访问浏览器输入 IP 地址即可看到正常工作的若依管理系统界面。
评论 80
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值