使用额外的Dockerfile.Slim文件,避免修改主分支文件

This commit is contained in:
Stratos 2021-07-29 19:30:48 +08:00
parent eb8c0505a6
commit 7f21ee79d5
2 changed files with 73 additions and 20 deletions

View File

@ -1,15 +1,4 @@
FROM amd64/buildpack-deps:buster-curl as installer FROM centos:7.5.1804
ARG NACOS_VERSION=2.0.2
ARG HOT_FIX_FLAG=""
RUN set -x \
&& curl -SL --output /var/tmp/nacos-server.tar.gz https://github.com/alibaba/nacos/releases/download/${NACOS_VERSION}${HOT_FIX_FLAG}/nacos-server-${NACOS_VERSION}.tar.gz \
&& tar -xzvf /var/tmp/nacos-server.tar.gz -C /home \
&& rm -rf /var/tmp/nacos-server.tar.gz /home/nacos/bin/* /home/nacos/conf/*.properties /home/nacos/conf/*.example /home/nacos/conf/nacos-mysql.sql
FROM openjdk:8-jre-slim
MAINTAINER pader "huangmnlove@163.com" MAINTAINER pader "huangmnlove@163.com"
# set environment # set environment
@ -19,8 +8,9 @@ ENV MODE="cluster" \
CLASSPATH=".:/home/nacos/conf:$CLASSPATH" \ CLASSPATH=".:/home/nacos/conf:$CLASSPATH" \
CLUSTER_CONF="/home/nacos/conf/cluster.conf" \ CLUSTER_CONF="/home/nacos/conf/cluster.conf" \
FUNCTION_MODE="all" \ FUNCTION_MODE="all" \
JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk" \
NACOS_USER="nacos" \ NACOS_USER="nacos" \
JAVA="/usr/local/openjdk-8/bin/java" \ JAVA="/usr/lib/jvm/java-1.8.0-openjdk/bin/java" \
JVM_XMS="1g" \ JVM_XMS="1g" \
JVM_XMX="1g" \ JVM_XMX="1g" \
JVM_XMN="512m" \ JVM_XMN="512m" \
@ -28,23 +18,37 @@ ENV MODE="cluster" \
JVM_MMS="320m" \ JVM_MMS="320m" \
NACOS_DEBUG="n" \ NACOS_DEBUG="n" \
TOMCAT_ACCESSLOG_ENABLED="false" \ TOMCAT_ACCESSLOG_ENABLED="false" \
TZ="Asia/Shanghai" TIME_ZONE="Asia/Shanghai"
ARG NACOS_VERSION=2.0.2
ARG HOT_FIX_FLAG=""
WORKDIR $BASE_DIR WORKDIR $BASE_DIR
# copy nacos bin RUN set -x \
COPY --from=installer ["/home/nacos", "/home/nacos"] && yum update -y \
&& yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel wget iputils nc vim libcurl
RUN wget https://github.com/alibaba/nacos/releases/download/${NACOS_VERSION}${HOT_FIX_FLAG}/nacos-server-${NACOS_VERSION}.tar.gz -P /home
RUN tar -xzvf /home/nacos-server-${NACOS_VERSION}.tar.gz -C /home \
&& rm -rf /home/nacos-server-${NACOS_VERSION}.tar.gz /home/nacos/bin/* /home/nacos/conf/*.properties /home/nacos/conf/*.example /home/nacos/conf/nacos-mysql.sql
RUN yum autoremove -y wget \
&& ln -snf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime && echo $TIME_ZONE > /etc/timezone \
&& yum clean all
ADD bin/docker-startup.sh bin/docker-startup.sh ADD bin/docker-startup.sh bin/docker-startup.sh
ADD conf/application.properties conf/application.properties ADD conf/application.properties conf/application.properties
ADD init.d/custom.properties init.d/custom.properties ADD init.d/custom.properties init.d/custom.properties
# set startup log dir # set startup log dir
RUN mkdir -p logs \ RUN mkdir -p logs \
&& cd logs \ && cd logs \
&& touch start.out \ && touch start.out \
&& ln -sf /dev/stdout start.out \ && ln -sf /dev/stdout start.out \
&& ln -sf /dev/stderr start.out && ln -sf /dev/stderr start.out
RUN chmod +x bin/docker-startup.sh RUN chmod +x bin/docker-startup.sh
EXPOSE 8848 EXPOSE 8848

49
build/Dockerfile.Slim Normal file
View File

@ -0,0 +1,49 @@
FROM amd64/buildpack-deps:buster-curl as installer
ARG NACOS_VERSION=2.0.2
ARG HOT_FIX_FLAG=""
RUN set -x \
&& curl -SL --output /var/tmp/nacos-server.tar.gz https://github.com/alibaba/nacos/releases/download/${NACOS_VERSION}${HOT_FIX_FLAG}/nacos-server-${NACOS_VERSION}.tar.gz \
&& tar -xzvf /var/tmp/nacos-server.tar.gz -C /home \
&& rm -rf /var/tmp/nacos-server.tar.gz /home/nacos/bin/* /home/nacos/conf/*.properties /home/nacos/conf/*.example /home/nacos/conf/nacos-mysql.sql
FROM openjdk:8-jre-slim
# set environment
ENV MODE="cluster" \
PREFER_HOST_MODE="ip"\
BASE_DIR="/home/nacos" \
CLASSPATH=".:/home/nacos/conf:$CLASSPATH" \
CLUSTER_CONF="/home/nacos/conf/cluster.conf" \
FUNCTION_MODE="all" \
NACOS_USER="nacos" \
JAVA="/usr/local/openjdk-8/bin/java" \
JVM_XMS="1g" \
JVM_XMX="1g" \
JVM_XMN="512m" \
JVM_MS="128m" \
JVM_MMS="320m" \
NACOS_DEBUG="n" \
TOMCAT_ACCESSLOG_ENABLED="false" \
TZ="Asia/Shanghai"
WORKDIR $BASE_DIR
# copy nacos bin
COPY --from=installer ["/home/nacos", "/home/nacos"]
ADD bin/docker-startup.sh bin/docker-startup.sh
ADD conf/application.properties conf/application.properties
ADD init.d/custom.properties init.d/custom.properties
# set startup log dir
RUN mkdir -p logs \
&& cd logs \
&& touch start.out \
&& ln -sf /dev/stdout start.out \
&& ln -sf /dev/stderr start.out
RUN chmod +x bin/docker-startup.sh
EXPOSE 8848
ENTRYPOINT ["bin/docker-startup.sh"]