nacos-group / nacos-docker

This project contains a Docker image meant to facilitate the deployment of Nacos .

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

是否可以把基础镜像的centos:7.9.2009替换为eclipse-temurin:8-jre

zqr95518 opened this issue · comments

commented

基础镜像用centos体积太大了,用eclipse-temurin:8-jre可以减少jre的安装步骤。
原镜像里包含wget所以其实啥都不需要装,只需要用apt-get更新一下组件。
制作出来的镜像大约是原来体积的一半,只测试了单例模式是可以正常使用的,希望可以提供一些参考。
下面是改过的dockerfile。(还改了个ln -snf不然会报错)

FROM eclipse-temurin:8-jre
MAINTAINER pader "huangmnlove@163.com"

# 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="/opt/java/openjdk" \
    NACOS_USER="nacos" \
    JAVA="${JAVA_HOME}/bin/java" \
    JVM_XMS="1g" \
    JVM_XMX="1g" \
    JVM_XMN="512m" \
    JVM_MS="128m" \
    JVM_MMS="320m" \
    NACOS_DEBUG="n" \
    TOMCAT_ACCESSLOG_ENABLED="false" \
    TIME_ZONE="Asia/Shanghai"

ARG NACOS_VERSION=2.2.1
ARG HOT_FIX_FLAG=""

WORKDIR $BASE_DIR

RUN set -x \
    && apt-get update \
    && apt-get upgrade --no-install-recommends --no-install-suggests -y
RUN wget --no-check-certificate 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 ln -snf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime && echo $TIME_ZONE > /etc/timezone \
    && apt-get purge -y --auto-remove




ADD bin/docker-startup.sh bin/docker-startup.sh
ADD conf/application.properties conf/application.properties


# set startup log dir
RUN mkdir -p logs \
	&& cd logs \
	&& touch start.out \
	&& ln -snf /dev/stdout start.out \
	&& ln -snf /dev/stderr start.out
RUN chmod +x bin/docker-startup.sh

EXPOSE 8848
ENTRYPOINT ["bin/docker-startup.sh"]

我觉得替换成openj9的镜像FROM adoptopenjdk/openjdk8-openj9:alpine-slim
会更好,内存占用也更低。

commented

这个我没试过,上面那个我测试了一下至少单机版本是没问题的,肯定是比直接centos来的要小和安全