使用docker-compose部署前后端分离项目(CentOS8)

前提

工具

前端frontend : Visual Studio Code
后端backend : Visual Studio Code
Xshell
Xftp

版本

前端frontend : angular
后端backend : springboot

环境

CentOS8 已安装 Docker和Docker-Compose
可参考:https://blog.csdn.net/qq_37746855/article/details/116196189?spm=1001.2014.3001.5501

前端 angularJS
后端 springboot

步骤

前端打包

在这里插入图片描述

ng build

本例打包成功后文件夹为dist/zh-Hans 内,若未设置中英文,则直接打包到dist,写法类似
在这里插入图片描述

编写前端Dockerfile[具体Dockerfile应应对自身项目,方法类似]

FROM nginx:alpine

RUN { \
      echo 'server {'; \
      echo '    listen       80;'; \
      echo '    server_name  localhost;'; \
      echo ''; \
      echo '    location / {'; \
      echo '        root   /usr/share/nginx/html;'; \
      echo '        index  index.html;'; \
      echo '        try_files $uri $uri/ /index.html;'; \
      echo '    }'; \
      echo ''; \
      echo '    error_page   500 502 503 504  /50x.html;'; \
      echo '    location = /50x.html {'; \
      echo '        root   /usr/share/nginx/html;'; \
      echo '    }'; \
      echo '}'; \
    } > /etc/nginx/conf.d/default.conf

EXPOSE 80

WORKDIR /usr/share/nginx/html

COPY ./zh-Hans .

后端打包[本例使用gradle,mvn类似]

./gradlew build

将在build/libs文件夹内生成jar包

在这里插入图片描述

编写后端Dockerfile

在这里插入图片描述

FROM openjdk:11
VOLUME /tmp 
ADD springboot-server-0.0.1-SNAPSHOT.jar /app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","/app.jar"]

编写docker-compose.yml

version : '3'
services:
  backend:
    build:
      context: .
      dockerfile: Dockerfile_b
    ports:
      - "8081:8081"
  frontend:
    build:
      context: .
      dockerfile: Dockerfile-zh-Hans
    ports:
      - "4200:80"

用xftp将文件拷贝服务器

在这里插入图片描述

将前端dist 文件内容 、后端jar包 、前端Dockerfile、后端Dockerfile以及docker-compose.yml文件拷进服务器

在这里插入图片描述

用xshell 运行docker-compose.yml

在这里插入图片描述
在这里插入图片描述

运行docker-compose up

在这里插入图片描述

结束

如此便可成功访问。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

eeenkidu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值