当前位置: 首页 > news >正文

docker-compose启动前后端分离项目(单机)

🌟docker-compose启动前后端

📁准备文件

  • xzs-mysql.sql(数据库脚本)
  • xzs-3.9.0.jar(后端代码)
  • application-prod.yml(后端配置文件)
  • entry.sh(后端启动脚本)
  • exam-web.tar.gz(前端代码)
  • exam.conf(前端配置文件)

📝书写Dockerfile-db

FROM mysql:8.0-debian
LABEL author=zhu desc="exam db"ENV MYSQL_ROOT_PASSWORD="1"
ENV MYSQL_DATABASE=exam
ENV MYSQL_USER=exam
ENV MYSQL_PASSWORD="1"ADD xzs-mysql.sql /docker-entrypoint-initdb.d/

📝书写Dockerfile-web-backend

FROM ubuntu:22.04
LABEL author=zhu desc="exam_ubuntu images"ENV VER=3.9.0
ENV ENVIR=prod
ENV CONF=application-${ENVIR}.yml
ENV CODE=xzs-${VER}.jar
ENV DIR=/app/code/exam/backend/RUN sed -ri 's#archive.ubuntu.com|security.ubuntu.com#mirrors.aliyun.com#g' /etc/apt/sources.list \&& apt-get update \&& apt-get install -y openjdk-11-jdk curl \&& mkdir -p ${DIR}WORKDIR ${DIR}ADD ${CONF} .
ADD ${CODE} .
ADD entry.sh ./entry.shEXPOSE 8000CMD ["./entry.sh"]HEALTHCHECK --interval=5s --timeout=20s --retries=2 CMD curl http://127.0.0.1:8000

📝书写Dockerfile-web-front

FROM ubuntu:22.04
LABEL author=zhu desc="zrlog_ubuntu images"ENV CODE_NAME=exam-web.tar.gz
ENV CODE_DIR=/app/code/exam/front/
ENV CONF=exam.confRUN sed -ri 's#archive.ubuntu.com|security.ubuntu.com#mirrors.aliyun.com#g'   /etc/apt/sources.list \&& apt-get update \&& apt-get install -y nginx curl \&& mkdir -p ${CODE_DIR}ADD ${CODE_NAME} ${CODE_DIR}
ADD ${CONF} /etc/nginx/conf.d/EXPOSE 80 443CMD ["nginx","-g","daemon off;"]# 监控业务是否正常
HEALTHCHECK --interval=5s --timeout=20s --retries=2 CMD curl http://127.0.0.1:80

📝书写docker-compose

services:exam_backend:image: "web:exam_backend"networks:- exambuild:context: ./web-backend/dockerfile: Dockerfilecontainer_name: exam_backend_v1ports:- 8000:8000restart: alwaysdepends_on:- exam_dbexam_db:image: "web:exam_db"networks:- exambuild:context: ./db/dockerfile: Dockerfilecontainer_name: exam_db_v1ports:- 3306:3306- 33060:33060restart: alwaysvolumes:- data:/var/lib/mysql/exam_front:image: "web:exam_front"networks:- exambuild:context: ./web-front/dockerfile: Dockerfilecontainer_name: exam_front_v1ports:- 81:80restart: alwaysnetworks:exam:driver: bridgeipam:driver: defaultconfig:- subnet: 172.10.0.0/24gateway: 172.10.0.1volumes:data:

💡docker-compose生成镜像

docker-compose build

🚀docker-compose启动镜像

docker-compose up -d

🔍检查验证

docker-compose images
docker-compose ps

浏览器访问

http://student.zhubl.xyz/ 学生端 student 123456
http://admin.zhubl.xyz/   管理端 admin   123456


http://www.dtcms.com/a/288539.html

相关文章:

  • ABP VNext + Playwright E2E:前后端一体化自动化测试
  • 秒赤Haproxy配置算法
  • The law and schools
  • 锂电池充电芯片
  • 文档表格标题跑到表格下方,或标题跟表格空隔太大如何处理
  • 【项目分享】动手做一个TypeC转TTL模块(附带原理图)
  • Lock4j 使用说明
  • Input输入和Screen相关
  • 一键创建netcore8.0项目
  • 电机相关常见名词
  • 国产电科金仓数据库金仓KES V9 2025:AI时代的数据库融合标杆
  • Temperature 是在LLM中的每一层发挥作用,还是最后一层? LLM中的 Temperature 参数 是怎么计算的
  • 信息学奥赛一本通 1579:【例 5】皇宫看守 | 洛谷 P2458 [SDOI2006] 保安站岗
  • 明细列表,明细grid中的默认按钮失效,配置按钮失效
  • Solidity 中的`bytes`
  • [AI风堇]基于ChatGPT3.5+科大讯飞录音转文字API+GPT-SOVITS的模拟情感实时语音对话项目
  • min-max容斥学习笔记
  • 线性回归问题
  • MC0463四大名著-水浒签到
  • 智慧酒店房价牌系统,国际版,海外版 的设计与应用价值研究———仙盟创梦IDE
  • NX二次开发常用函数——从一个坐标系到另一个坐标系的转换(UF_MTX4_csys_to_csys )相同体坐标转化
  • 文献精读:青藏高原东北部青海湖流域沿海拔分布的蒸散量及其主要影响因素
  • 问津集 #1:Rethinking The Compaction Policies in LSM-trees
  • 计算机组成原理20250719——计算机系统概述
  • 创建套接字并bind的详细过程
  • 图片放大镜案例
  • 关于Spring RestTemplate
  • Java多线程进阶
  • 【计算机网络架构】树型架构简介
  • openmv循迹