• 在docker上部署springboot项目


    〇、环境

    开发:win10 + idea2020.1 + java11

    部署:centos7+docker

    一、下载openjdk

    docker pull openjdk:版本号

    docker run --name=myopenjdk -idt openjdk:版本号

    二、打包springboot项目注意事项

      1.去掉Test步骤,快速打包;

      选中test,点击蓝色闪电,选中package,点击绿色三角。

      

      2.文件读取方式

        不用使用***.getFile(),***.getFileName(),而是使用如下方式:

     1 InputStream is=this.getClass().getResourceAsStream("/static/***.csv");
    
    
     2 BufferedReader br = new BufferedReader(new InputStreamReader(is));

      3.layui的图标

        要使用下图第一种方式。若使用第二种方式很可能只显示一个 口

        

    三、创建jar镜像

      1.Dockerfile文件

      把打包好的jar包放到CentOS7里,并在同目录下新建一个文件——Dockerfile,文件内容如下(要注意java版本、jar包名的修改):

    # 基于openjdk 镜像
    FROM openjdk:版本号
     
    # 将本地文件夹挂在到当前容器
    VOLUME /tmp
     
    # 复制文件到容器
    ADD demo-0.0.1-SNAPSHOT.jar app.jar
     
    # 声明需要暴露的端口
    EXPOSE 8080
     
    # 配置容器启动后执行的命令
    RUN bash -c "touch /app.jar" ENTRYPOINT [
    "java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

      2.创建镜像

    docker build -t server .
    • -t 表示将新镜像命名为 server
    • 末尾的 . 指明 build context 为当前目录
    • Docker 默认会从 build context 中查找 Dockerfile 文件,我们也可以通过 -f 参数指定 Dockerfile 的位置。

      3.运行镜像

    docker run --net host -it -d -p 8080:8080  server

    四、让防火墙开放8080端口

      systemctl start firewalld                  开启防火墙

      firewall-cmd --zone=public --add-port=8080/tcp --permanent  开放8080端口

  • 相关阅读:
    mysql 视图使用
    mysql 5.7 Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ...报错
    mysql创建数据库指定字符集和校对规则
    grep 命令使用
    awk 命令使用
    if [ $# -ne 1 ] 作用
    shell 获取当前目录下的jar文件
    jar 命令使用
    unzip 命令指定解压路径
    Win10系列:JavaScript写入和读取文件
  • 原文地址:https://www.cnblogs.com/Drajun/p/12846429.html
Copyright © 2020-2023  润新知