Docker部署前后端若依项目实战,不使用docker

文章正文
发布时间:2025-05-15 02:10

### 使用 Docker 部署若依系统前后端分离教程 #### 安装必要的组件 为了顺利部署若依系统,需要先安装 Docker 和 Docker Compose。可以通过阿里云镜像仓库来加速下载过程[^3]。 ```bash yum-config-manager --add-repo 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 地址即可看到正常工作的若依管理系统界面。

首页
评论
分享
Top