长安链java-sdk打成jar包部署找不到配置文件,springBoot项目制作Docker镜像

长安链使用sdk_config.yml的形式来引入用户的各种证书文件,

但是打成jar包部署在服务器上会提示找不到文件。

由于国内对镜像的限制,我选用了阿里的龙蜥镜像,里面提供java1.8的环境,因为长安链要1.8的环境

docker pull  anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/openjdk:8-8.6

解决方案就是制作成docker镜像,将证书挂载出来,同时映射到容器。

步骤1

创建一个Dockerfile文件,内容如下:

# 使用指定的基础镜像
FROM anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/openjdk:8-8.6

# 创建一个目录来存放应用程序
WORKDIR /app

# 复制JAR文件
COPY demo-0.0.1-SNAPSHOT.jar /app/demo-0.0.1-SNAPSHOT.jar

# 暴露应用程序运行的端口(假设你的应用程序运行在8080端口)
EXPOSE 8080

# 运行JAR文件
ENTRYPOINT ["java", "-jar", "/app/demo-0.0.1-SNAPSHOT.jar"]

demo-0.0.1-SNAPSHOT.jar是我jar包的名称

第一行 是java环境

步骤2 :构建Docker镜像:

docker build -t fed_chain .

fed_chain是我镜像的名字

步骤3:运行Docker容器并挂载本地文件

docker run -d -p 8080:8080 -v /home/management-backend/test_chain/release/TestCMorg1-cmtestnode1/config/TestCMorg1/certs:/app/crypto-config/certs fed_chain

/home/management-backend/test_chain/release/TestCMorg1-cmtestnode1/config/TestCMorg1/cert/是我本地文件的路径


/app/crypto-config/certs:是容器内部的路径

也就是说如果访问/app/crypto-config/certs,就会去我的外部文件找

步骤4:  检查容器内文件

进入容器并检查文件:

docker exec -it <CONTAINER ID> /bin/bash
ls /app/crypto-config/certs/user/cmtestuser1/

查看运行时日志

实时查看:

docker logs -f  容器id

不实时查看

docker logs 容器ID

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot 是一个开源的应用程序框架,它可以帮助开发者快速构建独立的、可部署的Spring应用程序。Docker 是一个开源的容器化技术,可以将应用程序和其依赖项打包为一个独立的、运行在任何环境中的镜像。 要将Spring Boot 应用程序打成Docker镜像包,需要按照以下步骤进行操作: 1. 首先,我们需要在pom.xml文件中添加Docker Maven插件依赖。 ```xml <build> <plugins> <plugin> <groupId>com.spotify</groupId> <artifactId>docker-maven-plugin</artifactId> <version>1.2.0</version> </plugin> </plugins> </build> ``` 2. 在Dockerfile中定义打包镜像的指令。可以在项目的根目录下创建一个名为Dockerfile的文件,并使用以下内容: ```dockerfile FROM openjdk:8-jdk-alpine COPY target/my-app.jar /app.jar CMD ["java","-jar","/app.jar"] ``` 上述Dockerfile会指定使用OpenJDK 8的JDK基础镜像,并将编译好的Spring Boot应用程序包拷贝到镜像中。然后在启动容器时执行CMD命令运行应用程序。 3. 最后,在终端中进入项目的根目录,执行如下命令来构建Docker镜像: ```bash mvn clean package docker:build ``` 这个命令会使用Docker Maven插件来打包Spring Boot应用程序,并将其构建为Docker镜像。 4. 构建成功后,可以使用以下命令来运行Docker容器: ```bash docker run -p 8080:8080 -t imageName:tag ``` 其中,-p选项用于将容器的8080端口映射到主机的8080端口,imageName:tag则为构建出来的镜像的名称和标签。 以上就是将Spring Boot应用程序打成Docker镜像包的步骤。通过这种方式,可以方便地将应用程序部署到任何支持Docker的环境中,简化了部署的过程,提高了应用程序的可移植性和可扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值