搭建基础镜像(centos+jdk)

ops/2024/9/22 21:36:29/

搭建基础镜像(centos+jdk)

  • 1. 目录结构
    • 1.1 应用目录
    • 2.2 镜像目录
  • 2. 编写Dockerfile
    • 2.1 设置工作目录
    • 2.2 解决时间同步问题(设置时区)
    • 2.3 核心逻辑
    • 2.4 设置环境变量
  • 3. 构建镜像
    • 3.1 构建镜像
    • 3.2 导出镜像

1. 目录结构

1.1 应用目录

事先下载jdk安装包并保存到本地
在这里插入图片描述

2.2 镜像目录

在这里插入图片描述

2. 编写Dockerfile

2.1 设置工作目录

# 设置工作目录
WORKDIR ${WORK_DIR}# 文件拷贝:将所有本地文件拷贝到容器目录
COPY ./jdk ${WORK_DIR}/jdk

2.2 解决时间同步问题(设置时区)

# 解决时间同步问题
RUN rm -f /etc/localtime && ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

2.3 核心逻辑

  • 创建用户
  • 安装基础包
  • 安装JDK
  • 安装证书
RUN groupadd ${SYS_USER_GROUP} && \# 创建用户admin并添加到admin用户组下useradd -m -g ${SYS_USER_GROUP} ${SYS_USER} && \# 创建目录mkdir -p ${SRC_APP_DIR} ${SRC_LOG_DIR} ${SRC_DATA_DIR} ${SRC_SERVER_DIR} ${TGT_DIR} && \# 安装基础包yum install -y openssh-server cronie wget && \# 安装JDK \tar -zxvf ${WORK_DIR}/jdk/jdk-8u391-linux-x64.tar.gz -C ${SRC_SERVER_DIR} && \# 安装证书ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N '' && \ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N '' && \ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N '' && \# 删除JDK安装包rm -r ${WORK_DIR}/jdk
  • 环境变量(ENV)
    • SYS_USER_GROUP:系统用户组
    • SYS_USER:系统用户
  • 参数(ARG)
    • SRC_DIR:源根目录
    • SRC_APP_DIR:源应用目录
    • SRC_LOG_DIR:源日志目录
    • SRC_DATA_DIR:源数据目录
    • SRC_SERVER_DIR:源服务目录
    • TGT_DIR:目标根目录

2.4 设置环境变量

# 设置JAVA_HOME
ENV JAVA_HOME "$SRC_SERVER_DIR/jdk1.8.0_391"
# 设置PATH
ENV PATH "$PATH:$JAVA_HOME/bin"

3. 构建镜像

3.1 构建镜像

docker build -t centos7-jdk-1.0 -f ./Dockerfile_centos7_jdk .

3.2 导出镜像

docker save -o /images/centos7-jdk-1.0.tar centos7-jdk-1.0

http://www.ppmy.cn/ops/26091.html

相关文章

触发器的查看和删除

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 如果想查看当前所有的触发器信息,可以使用数据字典 user_triggers,这个数据字典有很多字段可以查看所有触发器的名称、类型、表名、拥有者等信息。 …

Python 与 TensorFlow2 生成式 AI(三)

原文:zh.annas-archive.org/md5/d06d282ea0d9c23c57f0ce31225acf76 译者:飞龙 协议:CC BY-NC-SA 4.0 第七章:使用 GAN 进行风格转移 神经网络在涉及分析和语言技能的各种任务中正在取得进步。创造力是人类一直占有优势的领域&…

uniapp小程序订阅通知

服务 开通订阅服务 const tmplIds ref([tsdasdadasdfgdrtwexQHdEsjZV])//换成自己的 function confirm(){uni.requestSubscribeMessage({tmplIds: tmplIds.value,success: (res) > {// console.log(res)let auth_notice res[tmplIds.value[0]] accept ? 1 : 2 //1是接…

详解centos8 搭建使用Tor 创建匿名服务和匿名网站(.onion)

1 Tor运行原理: 请求方需要使用:洋葱浏览器(Tor Browser)或者Google浏览器来对暗,网网站进行访问 响应放需要使用:Tor协议的的Hidden_service 2 好戏来了 搭建步骤: 1.更新yum源 rpm -Uvh h…

如何看待AIGC技术?宝兰德有话说

简介: 随着数字技术的持续创新和普及,社会治理方式、产业形态、生活方式高度数字化,由此催生海量数据, 这些数据不仅种类繁多,且具有很高的价值。当企业决策者认识到这些数量庞大、晦涩难懂的数据背后蕴含着巨大的商业…

SpringBoot使用阿里云实现短信功能

引入依赖 <!-- 阿里云依赖 --> <dependency><groupId>com.aliyun</groupId><artifactId>aliyun-java-sdk-core</artifactId><version>4.6.3</version> </dependency> <dependency><groupId>com.aliyun<…

基于RK1126的小型化低功耗AI相机,支持人体特征识别、人脸特征识别、案例帽识别等

提供可定制的⼀套 AI相机软硬件开发平台&#xff0c; 硬件采⽤ RockchipRV1126处理器解决 ⽅案&#xff0c;可选择搭配 SonyIMX系列传感器&#xff0c;POE供电与数据传输&#xff0c;采⽤ 38板标准结构设计&#xff0c;快速按需定制外壳&#xff0c;⽀撑从开发到验证到批量⽣产…

第9篇:创建Nios II工程之读取Switch的值<二>

Q&#xff1a;上一期我们完成了Quartus硬件工程部分&#xff0c;本期我们创建Nios II软件工程这部分。 A&#xff1a;创建完BSP和Nios II Application之后&#xff0c;在source文件main.c中添加代码&#xff1a;system.h头文件中新增了Switch PIO IP的硬件信息&#xff0c;包括…