1、jdk
cat my.env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_291-aarch64
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar
export PATH=$PATH:${JAVA_HOME}/bin
FROM geray/centos:v7.3.1
#FROM centos:7
LABEL maintainer="Geray <1690014753@qq.com>" \
image.authors="geray" \
image.description="Application packaged by Geray" \
image.ref.name="geray/centos:v7.3.1" \
image.title="HotspotJDK" \
version="jdk-8u291" \
image.vendor="VMware, Inc." \
build.date="2022.10.19"
#COPY my_env.sh /etc/profile.d/
COPY jdk-8u291-linux-aarch64.rpm /
RUN rpm -ivh /jdk-8u291-linux-aarch64.rpm ; \
rm -rf /jdk-8u291-linux-aarch64.rpm
ENV JAVA_HOME=/usr/java/jdk1.8.0_291-aarch64 \
JRE_HOME=$JAVA_HOME/jre \
CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar \
PATH=$PATH:${JAVA_HOME}/bin
docker build -t geray/hs_jdk:v1.8.0_291 .
2、jdk-apline
FROM geray/alpine:3.16.2
LABEL maintainer="Geray <1690014753@qq.com>" \
image.authors="geray" \
image.description="Application packaged by Geray" \
image.ref.name="geray/alpine:3.16.2" \
version="jdk-8u291" \
image.vendor="VMware, Inc." \
build.date="2023.1.4"
#RUN /bin/sh -c set -x yum -y install kde-l10n-Chinese telnet wget iproute net-tools && yum -y reinstall glibc-common && yum install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y && rm -rf /var/cache/yum/* # buildkit
RUN set -x ; \
apt-get -y install telnet wget iproute net-tools reinstall glibc-common git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim
ENV JAVA_HOME=/usr/java/jdk1.8.0_291-aarch64 \
JRE_HOME=$JAVA_HOME/jre \
CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar \
PATH=$PATH:${JAVA_HOME}/bin
2、jdk-rpm-x86
jdk下载:
Download the Latest Java LTS Free
FROM geray/centos:v7.3.1
LABEL maintainer="Geray <1690014753@qq.com>" \
image.authors="geray" \
image.description="Application packaged by Geray" \
image.ref.name="geray/centos:v7.3.1" \
image.title="HotspotJDK" \
version="openjdk-1.8.0.352.b08" \
#version="jdk-8u352" \
image.vendor="VMware, Inc." \
build.date="2023.1.3"
RUN set -x ;\
yum -y install java-1.8.0-openjdk-devel.x86_64 ;\
yum clean all ; \
rm -rf /var/cache/yum/*
ENV JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.352.b08-2.el7_9.x86_64/ \
JRE_HOME=$JAVA_HOME/jre \
CLASSPATH=.:${JAVA_HOME}/jre/lib/rt.jar:${JAVA_HOME}/lib/dt.jar:${JAVA_HOME}/lib/tools.jar \
PATH=$PATH:${JAVA_HOME}/bin
docker buildx build -t geray/openjdk:1.8.0.352.b08 --platform=linux/amd64,linux/arm64 --push .
3、kafka
confluent-community-7.1.1.tar.gz
资产元数据镜像构建
1、解压confluent-community-7.1.1.tar.gz
2、运行启动命令
目录:/opt/confluent-7.1.1
- zookeeper
启动脚本目录:bin/zookeeper-server-start
配置文件目录:etc/kafka/zookeeper.properties
启动命令:bin/zookeeper-server-start -daemon etc/kafka/zookeeper.properties
- kafka
启动脚本目录:bin/kafka-server-start
配置文件目录:etc/kafka/server.properties
启动命令 :bin/kafka-server-start -daemon etc/kafka/server.properties
- schemaRegistry
启动脚本目录:bin/schema-registry-start
配合文件目录:etc/schema-registrt/schema-registry.properties
启动命令:bin/schema-registry-start -daemon etc/schema-registry/schema-registry.properties
1. zookeeper
FROM openjdk:8-jdk
LABEL maintainer="Geray <1690014753@qq.com>" \
image.authors="geray" \
image.description="Application packaged by Geray" \
image.ref.name="openjdk:8-jdk" \
image.title="zookeeper" \
image.vendor="VMware, Inc." \
build.date="2022.11.18"
#ENV ZK_VERSION 7.1.1
#ENV SCALA_VERSION 2.13
ENV JDK_VERSION 8
ENV confluent-community=7.1.1
ADD confluent-community-7.1.1.tar.gz /
WORKDIR /confluent-community-7.1.1
# data目录
#VOLUME /tmp/zookeeper
#VOLUME /opt/zookeeper/logs
#VOLUME /opt/zookeeper/conf
EXPOSE 2181 9092 8081
# 测试
#CMD ["/confluent-7.1.1/bin/zookeeper-server-start", "/confluent-7.1.1/etc/kafka/zookeeper.properties"]
# zk配置
ENTRYPOINT ["/confluent-7.1.1/bin/zookeeper-server-start"]
CMD ["/confluent-7.1.1/etc/kafka/zookeeper.properties"]
# kafka配置
#ENTRYPOINT ["/confluent-7.1.1/bin/kafka-server-start"]
#CMD ["/confluent-7.1.1/etc/kafka/server.properties"]
# schema-registry配置
#ENTRYPOINT ["/confluent-7.1.1/bin/schema-registry-start"]
#CMD ["/confluent-7.1.1/etc/schema-registry/schema-registry.properties"]
- 构建
docker build -t geray/zookeeper:confluent-community-7.1.1-arm64 .
docker build -t geray/kafka:confluent-community-7.1.1-arm64 .
docker build -t geray/kafka-schema-registry:confluent-community-7.1.1-arm64 .
4. 构建一个镜像根据环境变量控制启动不同服务
- 启动脚本
#!/bin/bash
# 根据环境变量判断所启动的服务
if [ $SERVICE -eq "zookeeper" ];then
/confluent-7.1.1/bin/zookeeper-server-start /confluent-7.1.1/etc/kafka/zookeeper.properties
else if [ $SERVICE -eq "kafka" ]
/confluent-7.1.1/bin/kafka-server-start /confluent-7.1.1/etc/kafka/server.properties
else
/confluent-7.1.1/bin/schema-registry-start /confluent-7.1.1/etc/schema-registry/schema-registry.properties
fi
- Dockerfile
FROM openjdk:8-jdk
LABEL maintainer="Geray <1690014753@qq.com>" \
image.authors="geray" \
image.description="Application packaged by Geray" \
image.ref.name="openjdk:8-jdk" \
image.title="zookeeper" \
image.vendor="VMware, Inc." \
build.date="2022.11.18"
#ENV ZK_VERSION 7.1.1
#ENV SCALA_VERSION 2.13
ENV JDK_VERSION 8
ENV confluent-community=7.1.1
ADD confluent-community-7.1.1.tar.gz /
WORKDIR /confluent-community-7.1.1
# data目录
#VOLUME /tmp/zookeeper
#VOLUME /opt/zookeeper/logs
#VOLUME /opt/zookeeper/conf
EXPOSE 2181 9092 8081
# 测试
#CMD ["/confluent-7.1.1/bin/zookeeper-server-start", "/confluent-7.1.1/etc/kafka/zookeeper.properties"]
# zk配置
ENTRYPOINT ["/confluent-7.1.1/bin/zookeeper-server-start"]
CMD ["/confluent-7.1.1/etc/kafka/zookeeper.properties"]
# kafka配置
#ENTRYPOINT ["/confluent-7.1.1/bin/kafka-server-start"]
#CMD ["/confluent-7.1.1/etc/kafka/server.properties"]
# schema-registry配置
#ENTRYPOINT ["/confluent-7.1.1/bin/schema-registry-start"]
#CMD ["/confluent-7.1.1/etc/schema-registry/schema-registry.properties"]