diff --git a/build/Dockerfile b/build/Dockerfile index 8ee0c568..3b43d477 100644 --- a/build/Dockerfile +++ b/build/Dockerfile @@ -22,7 +22,7 @@ ENV MODE="cluster" \ ARG NACOS_VERSION=1.4.1 -WORKDIR /$BASE_DIR +WORKDIR $BASE_DIR RUN set -x \ && yum update -y \ diff --git a/build/Dockerfile-alpine b/build/Dockerfile-alpine new file mode 100644 index 00000000..ade47cbc --- /dev/null +++ b/build/Dockerfile-alpine @@ -0,0 +1,53 @@ +FROM alpine:3.12 +LABEL alonelaval "alonelaval@apache.org" + +# 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" \ + JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk" \ + NACOS_USER="nacos" \ + JAVA="java" \ + JVM_XMS="2g" \ + JVM_XMX="2g" \ + JVM_XMN="1g" \ + JVM_MS="128m" \ + JVM_MMS="320m" \ + NACOS_DEBUG="n" \ + TOMCAT_ACCESSLOG_ENABLED="false" \ + TIME_ZONE="Asia/Shanghai" + +ARG NACOS_VERSION=1.4.1 + +WORKDIR $BASE_DIR + + +RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories \ + && apk add --no-cache bash wget curl ca-certificates tzdata jq vim libc6-compat gcompat \ + && ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \ + && wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub \ + && apk --update --no-cache add busybox-extras \ + && apk add openjdk8 +RUN wget https://github.com/alibaba/nacos/releases/download/${NACOS_VERSION}/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 + + +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"] diff --git a/build/conf/application.properties b/build/conf/application.properties index 65b0750a..23376670 100644 --- a/build/conf/application.properties +++ b/build/conf/application.properties @@ -8,8 +8,8 @@ nacos.cmdb.eventTaskInterval=10 nacos.cmdb.labelTaskInterval=300 nacos.cmdb.loadDataAtStart=false db.num=${MYSQL_DATABASE_NUM:1} -db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true} -db.url.1=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true} +db.url.0=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false} +db.url.1=jdbc:mysql://${MYSQL_SERVICE_HOST}:${MYSQL_SERVICE_PORT:3306}/${MYSQL_SERVICE_DB_NAME}?${MYSQL_SERVICE_DB_PARAM:characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useSSL=false} db.user=${MYSQL_SERVICE_USER} db.password=${MYSQL_SERVICE_PASSWORD} ### The auth system to use, currently only 'nacos' is supported: