ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

docker一键安装部署若依Ruoyi-Vue(保姆级)

2026/9/9 23:19:20 拓冰建站 浏览量
docker一键安装部署若依Ruoyi-Vue(保姆级) 前置Docker知识docker保姆级入门教程3小时速通https://blog.csdn.net/TinpeaV/article/details/151855623?spm1001.2014.3001.55011、操作前准备ruoyi-vue源码地址https://gitee.com/y_project/RuoYi-Vue下载好源码后导入到你的IDEA中博主这里使用的是IDEA2024版2、开始操作2.1 Ruoyi-vue修改配置文件1、将url里的ip地址localhost修改成mysql#重要的事情说三遍重要的事情说三遍重要的事情说三遍因为应用和数据库不在一个容器这里写的是docker服务名称。url: jdbc:mysql://mysql:3306/ry-vue?useUnicodetruecharacterEncodingutf8zeroDateTimeBehaviorconvertToNulluseSSLtrueserverTimezoneGMT%2B82、密码修改成你的数据库密码3、redis 修改host把host修改成docker的容器服务名称redistips:ruoyi的redis密码默认为空生产建议设置但是我这里是演示就不改太多2.2 maven打包后端Jar包有两种方式如下#项目内maven打包#ruoyi自带bat打包文件#打包好的jar位置2.3 webpack打包前端静态包#如果你是首次打开ruoyi-ui需要先执行命令 npm installnpm install --registryhttps://registry.npmmirror.com#执行npm run build:prod打包前端包npm run build:prod2.4 将安装好的jar包和dist前端静态文件放入Linux服务器目录下我这里是放到了/home/ruoyi/projects目录下我将dist文件名称修改成了ruoyi-ui2.5 编写Dockerfile制作前端和后端的镜像#先走到存放前后端的资源目录下cd /home/ruoyi/projects2.5.1 制作后端镜像#编写后端的Dockerfile文件vim dockerfile-backend填入以下内容然后wq保存退出FROM eclipse-temurin:17-jre-jammy WORKDIR /app RUN apt-get update \ apt-get install -y --no-install-recommends \ libfreetype6 \ fontconfig \ fonts-dejavu \ fonts-noto-cjk \ fc-cache -f \ rm -rf /var/lib/apt/lists/* COPY ruoyi-admin.jar app.jar EXPOSE 8080 ENTRYPOINT [java, -Djava.awt.headlesstrue, -jar, app.jar]#构建后端镜像docker build -f dockerfile-backend -t ruoyi-admin .2.5.2 制作前端镜像#新建nginx的配置文件,nginx.confworker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; charset utf-8; location / { root /home/ruoyi/projects/ruoyi-ui; try_files $uri $uri/ /index.html; index index.html index.htm; } location /prod-api/ { proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header REMOTE-HOST $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://ruoyi-admin:8080/; } # springdoc proxy location ~ ^/v3/api-docs/(.*) { proxy_pass http://ruoyi-admin:8080/v3/api-docs/$1; } error_page 500 502 503 504 /50x.html; location /50x.html { root html; } } }#编写前端的Dockerfile文件vim dockerfile-frontendFROM nginx:1.26.0 COPY ruoyi-ui /home/ruoyi/projects/ruoyi-ui COPY nginx.conf /etc/nginx/nginx.conf EXPOSE 80#构建前端镜像docker build -f dockerfile-frontend -t ruoyi-ui .2.5.3 检查镜像2.6 编写docker-compose.yml文件vim docker-compose.yml复制填写以下代码wq保存退出。version: 3.9 services: mysql: image: mysql:8.0 container_name: ruoyi-mysql restart: always environment: MYSQL_ROOT_PASSWORD: 123456 MYSQL_DATABASE: ry-vue ports: - 3306:3306 volumes: - ./mysql/data:/var/lib/mysql - ./mysql/conf:/etc/mysql/conf.d redis: image: redis:6.2 container_name: ruoyi-redis restart: always ports: - 6379:6379 ruoyi-admin: image: ruoyi-admin container_name: ruoyi-admin restart: always depends_on: - mysql - redis ports: - 8080:8080 ruoyi-ui: image: ruoyi-ui container_name: ruoyi-ui restart: always depends_on: - ruoyi-admin ports: - 80:802.7 使用compose命令先启动mysql容器导入数据库因为是第一次启动一下子看到效果建议先启动mysql导入数据先。docker compose up -d mysql使用的数据库连接工具先连上mysql导入ruoyi的数据库2.8 使用compose命令直接启动ruoyi-vue截止到目前你的linux目录下应该有以下这些文件因为只有一个docker-compose文件所以直接使用命令docker compose up -d启动docker compose up -d查看是否都启动成功激动人心的时刻到了访问你的ip地址完结撒花~有问题的小伙伴欢迎在评论区留言讨论~