若依前后端分离项目docker部署

文章正文
发布时间:2025-05-11 20:58

### 使用 Docker 部署 Java 前后端分离架构的项目 #### 创建 Spring Boot 后端镜像 为了构建一个基于 Spring Boot 的后端应用,首先需要编写 `Dockerfile` 文件来定义如何打包应用程序。对于使用 JDK 8 开发的应用程序来说,基础镜像是非常重要的选择: ```dockerfile FROM java:8 MAINTAINER xtt VOLUME /tmp ADD service-system.jar guigu_docker.jar RUN bash -c 'touch /guigu_docker.jar' ENTRYPOINT ["java", "-jar", "/guigu_docker.jar"] EXPOSE 8800 ``` 这段脚本指定了基础镜像为 `java:8` 版本,并设置了必要的启动参数以及暴露了用于微服务通信的 8800 端口[^1]。 接着可以通过如下命令构建自定义的 Docker 镜像: ```bash docker build -t my-spring-boot-app . ``` 这会读取当前目录下的 `Dockerfile` 并按照其中指令逐步创建一个新的 Docker 映像[^2]。 #### 构建 Vue.js 前端镜像 前端部分通常由静态资源构成,因此推荐利用 Nginx 来提供这些文件的服务。为此也需要准备相应的 `Dockerfile`: ```dockerfile FROM nginx:alpine COPY dist /usr/share/nginx/html EXPOSE 80 ``` 这里的假设是已经有一个名为 `dist` 的文件夹包含了编译好的 Vue 应用程序。同样地,可以使用下面这条命令来进行构建操作: ```bash docker build -t my-vuejs-front-end . ``` #### 组合管理前后端容器 当分别拥有了各自的 Docker 镜像之后,就可以借助于 Docker Compose 工具轻松实现多容器间的协调工作。先准备好 `docker-compose.yml` 文件的内容: ```yaml version: '3' services: backend: image: my- "8800:8800" frontend: image: my-vuejs-front-end depends_on: - backend ports: - "80:80" ``` 上述 YAML 文档描述了一个简单的应用场景——两个独立的服务被命名为 `backend` 和 `frontend` ,并通过 `depends_on` 关键字确保前者先启动再加载后者。 最后一步就是执行以下命令让整个系统跑起来: ```bash docker-compose up -d ``` 这样就完成了从零开始直到最终上线的一整套流程介绍[^4]。

首页
评论
分享
Top