Docker内网部署前后端分离项目-Windows环境下

发布于:2025-04-05 ⋅ 阅读:(12) ⋅ 点赞:(0)

Docker: Accelerated Container Application Development

第一步:安装Docker

        进入Docker官网下载Docker,然后将此文件拷贝到无网络的电脑中,双击进行安装。

第二步:打包镜像

docker save -o my_images.tar my-mysql:latest my-backend:latest my-frontend:latest

解释为什么不需要打包nginx与jdk,在docker-compse的构建中,已经构建好的前后端的镜像,也就是此镜像内置了这些依赖与环境。(详情见上一篇文章)

Docker部署前后端分离项目-CSDN博客

底下是原版Docker-compose.yml

镜像名为: image: my-frontend:latest   # 自定义前端镜像名称和标签
容器名为:container_name: frontend_container(可以进入容器,通过docker exec -it frontend_container bash)

version: "3.8"

services:
  frontend:
    build:
      context: ./frontend
      dockerfile: Dockerfile
    image: my-frontend:latest   # 自定义前端镜像名称和标签
    container_name: frontend_container
    ports:
      - "9877:9877"
    restart: always

  backend:
    build:
      context: ./backend
      dockerfile: Dockerfile
    image: my-backend:latest    # 自定义后端镜像名称和标签
    container_name: backend_container
    ports:
      - "8580:8580"
    restart: always
    
  mysql:
    build:
      context: ./mysql-init  # 指定构建上下文目录
      dockerfile: Dockerfile
    image: my-mysql:latest      # 自定义 MySQL 镜像名称和标签
    container_name: mysql_container
    ports:
      - "3307:3306"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 123456
    volumes:
      - mysql_data:/var/lib/mysql
      
volumes:
  mysql_data:

打包好后会生成:my_images.tar,它是一个镜像集合。

第三步:解压镜像

docker load -i my_images.tar

第四步:修改docker-compose.yml然后启动页面!

修改docker-compose.yml

version: "3.8"

services:
  frontend:
    image: my-frontend:latest   # 使用已构建的 my-frontend 镜像
    container_name: frontend_container
    ports:
      - "9877:9877"
    restart: always

  backend:
    image: my-backend:latest    # 使用已构建的 my-backend 镜像
    container_name: backend_container
    ports:
      - "8580:8580"
    restart: always
    
  mysql:
    image: my-mysql:latest      # 使用已构建的 my-mysql 镜像
    container_name: mysql_container
    ports:
      - "3307:3306"
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: 123456
    volumes:
      - mysql_data:/var/lib/mysql
      
volumes:
  mysql_data:

执行:

docker-compose up -d

 完成!


网站公告

今日签到

点亮在社区的每一天
去签到