搜索
您的当前位置:首页正文

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

来源:步旅网

生成项目的镜像文件

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文件

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

因篇幅问题不能全部显示,请点此查看更多更全内容

Top