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

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

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

 完成!

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

相关文章:

  • 代码调试:VS调试实操
  • 民安智库:物业满意度调查是了解业主需求的关键工具
  • spring boot集成reids的 RedisTemplate 序列化器详细对比(官方及非官方)
  • 谷粒微服务高级篇学习笔记整理---thymeleaf
  • Kafka、RocketMQ、Pulsar对比
  • Linux 文件系统超详解
  • Java中的LocalDate类
  • 关于登录鉴权session、cookie和token
  • KMstation商品库存监控下单
  • neo4j+django+deepseek知识图谱学习系统对接前后端分离前端vue
  • angular实现连连看
  • 蓝桥杯练习:二叉树的最大深度
  • 系统与网络安全------Windows系统安全(6)
  • niuhe插件, 在 go 中渲染网页内容
  • 基于React + Antd + Java的OFD文件上传预览实现方案(OFD文件转图片)
  • 删除和关闭 Solana 中的账户和程序
  • Linux网络相关概念和重要知识(4)(序列化和反序列化、TCP协议、会话和守护进程)
  • 基于OpenCV的指纹验证:从原理到实战的深度解析
  • vue3 动态路由
  • 第1章-3 MySQL的逻辑架构
  • 【C++】二叉搜索树
  • 【哈希表】—— 我与C++的不解之缘(二十八)
  • [CISSP] [4] 法律、法规
  • alfred-deepseek开源程序在 Alfred 中与 DeepSeek 聊天
  • [IOI 2000] 回文字串
  • 符号秩检验
  • 跟着尚硅谷学vue-day2
  • 23 种设计模式中的解释器模式
  • C++友元与动态内存
  • 关于存储的笔记