当前位置:科技动态 > 创建Docker镜像的jar包

创建Docker镜像的jar包

  • 发布:2023-09-30 18:55

1。写入 Dokcerfile

###FROM 指定docker镜像的运行环境(这个docker镜像必须存在,这里选择jdk:8)
来自ubuntu_java8:v1
###将准备好的配置文件添加到容器中(这里是一个例子,可以将任何文件添加到docker中)
添加 antifraud-rule-0.0.1-SNAPSHOT.jar /antifraud/antifraud-rule-0.0.1-SNAPSHOT.jar
添加配置/反欺诈/配置/
添加db/ /反欺诈/db/
###设置时区
RUN /bin/cp /usr/share/zoneinfo/Asia/上海 /etc/localtime \
  && echo '亚洲/上海' >/etc/timezone  \
运行bash -c 'touch /antifraud/antifraud-rule-0.0.1-SNAPSHOT.jar'
#设置工作目录
WORKDIR '/反欺诈'
###ENTRYPOINT ["sh","-c"," ping 192.168.20.43"]
###容器启动命令
入口点["sh","-c"," java -Duser.timezone=GMT+08 -jar /antifraud/antifraud-rule-0.0. 1-SNAPSHOT.jar ${JAVA_OPTS}"]
###声明启动端口号暴露8080
the -entrypoint参数可以覆盖输入点
extrypoint参数
Expose参数
个人理解:公开曝光的端口更像是指示提供的端口需要由提供的服务提供的端口由容器
EXPOSE 不会直接自动建立端口与宿主机某个端口的映射关系
  如果 docker run 并指定自动映射 -P,则所有暴露的端口都会随机映射到宿主机的高级别端口
如果 docker run 指定了 –net=host 主机网络模式,则容器中 EXPOSE 命令暴露的端口将直接使用主机对应的端口,不存在映射关系
  如果EXPOSE 暴露的端口必须连接到某个主机,建立端口之间的映射关系,仍然需要使用 docker run -p 参数
EXPOSE 显式指明镜像开放的端口,为操作提供了方便一定程度上也提高了 Dockerfile 的可读性和可维护性

2. 创建docker镜像文件

## -t 镜像名称:镜像版本,.表示使用当前目录下的Dockerfile文件
docker构建-t测试:0.1.
## 查看镜子
docker 图像
## 导出图片
docker 保存测试:0.1 > test.tar

3。启动容器

## 使用镜子并加载
docker加载<test.tar
## 运行镜像
sudodocker运行-it -d -e“JAVA_OPTS=--www.sychzs.cn=192.168.20.43”--net=主机 --名称 cmbc -p 8081:8081 cmbc_rgap:v1

其中 -e "JAVA_OPTS=–www.sychzs.cn=192.168.20.43" 是传递给执行的 java -jar 命令的,这里可以传递给java程序

相关文章