【用docker部署一个Spring Boot + Thymeleaf + MySQL的项目到CentOS8中】

生成项目的镜像文件

在项目的根目录下创建Dockerfile文件

FROM openjdk:8

COPY target/lib_springboot-0.0.1-SNAPSHOT.jar /app.jar

ENTRYPOINT ["java", "-jar", "/app.jar"]

在项目根目录下执行:

docker build -t lib-image .

生成MySQL的镜像文件

在与Dockerfile同一个文件夹中创建初始化数据库的SQL文件,用于镜像一旦启动就自己去执行此文件初始化数据库。
创建Dockerfile文件:

ARG MYSQL_VERSION=8.0.26

FROM mysql:${MYSQL_VERSION}

COPY library.sql /docker-entrypoint-initdb.d/library.sql

在Dockerfile所在的文件中执行:

docker build -t mysql-image --build-arg MYSQL_VERSION=8.0.26 .

修改application.yml中的数据库连接信息

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://mysql-container:3306/library
    username: root
    password: xxxxxxxxx

添加docker-compose.yml文件

在项目的根目录下添加docker-compose.yml文件

version: '3'
services:
  mysql:
    image: mysql-image
    container_name: mysql-container
    environment:
      - MYSQL_ROOT_PASSWORD=Rrr123123@
    ports:
      - 3306:3306
    networks:
      - my-network

  app:
    image: lib-image
    container_name: lib-container
    ports:
      - 8181:8181
    depends_on:
      - mysql
    networks:
      - my-network
networks:
  my-network:

执行

docker-compose up -d

至此项目已经在win11中正常运行,下一步将其部署到centos8中。

传输镜像文件

生成打包文件lib-image.tarmysql-image.tar传输到centos中

docker save -o lib-image.tar lib-image
docker save -o mysql-image.tar mysql-image

docker-compose.yml也一起传输过去

加载镜像文件

docker load -i lib-image.tar
docker load -i mysql-image.tar

启动容器

docker-compose up -d
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值