FROM alpine:3.12.4RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone# 调整时区RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && apk update# 注意 这个配置是为了在alpine中运行二进制文件,如果不安装则无法运行RUN apk add --update-cache curl bash libc6-compatWORKDIR /opt/filebeatCOPY filebeat-7.6.2-linux-x86_64.tar.gz /optRUN cd /opt && \tar -xzf filebeat-7.6.2-linux-x86_64.tar.gz -C /opt/filebeat --strip-components=1 && \rm -f filebeat-7.6.2-linux-x86_64.tar.gz && \chmod +x /opt/filebeatRUN chmod go-w *WORKDIR /opt/apmCOPY apm-server-7.6.2-linux-x86_64.tar.gz /optCOPY elastic-apm-agent-1.30.1.jar /optRUN cd /opt && \tar -xzf apm-server-7.6.2-linux-x86_64.tar.gz -C /opt/apm --strip-components=1 && \rm -f apm-server-7.6.2-linux-x86_64.tar.gz && \chmod +x /opt/apmCMD ["/bin/sh"]
FROM alpine:3.12.4
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
# 调整时区
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && apk update
# 注意 这个配置是为了在alpine中运行二进制文件,如果不安装则无法运行
RUN apk add --update-cache curl bash libc6-compat
WORKDIR /opt/filebeat
COPY filebeat-7.6.2-linux-x86_64.tar.gz /opt
RUN cd /opt && \
tar -xzf filebeat-7.6.2-linux-x86_64.tar.gz -C /opt/filebeat --strip-components=1 && \
rm -f filebeat-7.6.2-linux-x86_64.tar.gz && \
chmod +x /opt/filebeat
CMD ["/bin/sh"]
docker build -t aslhw/alpine-filebeat-7.6.2 .
docker push aslhw/alpine-filebeat-7.6.2
在上面镜像上二次封装JDK
FROM aslhw/alpine-filebeat-7.6.2
ENV LANG C.UTF-8
RUN { \
echo '#!/bin/sh'; \
echo 'set -e'; \
echo; \
echo 'dirname "$(dirname "$(readlink -f "$(which javac || which java)")")"'; \
} > /usr/local/bin/docker-java-home \
&& chmod +x /usr/local/bin/docker-java-home
ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk/jre
ENV PATH $PATH:/usr/lib/jvm/java-1.8-openjdk/jre/bin:/usr/lib/jvm/java-1.8-openjdk/bin
ENV JAVA_VERSION 8u275
ENV JAVA_ALPINE_VERSION 8.275.01-r0
RUN set -x \
&& apk add --no-cache \
openjdk8-jre="$JAVA_ALPINE_VERSION" \
&& [ "$JAVA_HOME" = "$(docker-java-home)" ]
CMD ["/bin/sh"]
docker build -t aslhw/alpine-filebeat-7.6.2 .
docker push aslhw/alpine-filebeat-7.6.2
