1. FROM openjdk-8-jre-dmp:latest
    2. LABEL maintainer="qi.gao"
    3. ENV VERSION 2.0.0
    4. COPY apollo-adminservice/target/apollo-adminservice-${VERSION}.jar /app.jar
    5. RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
    6. && echo "Asia/Shanghai" > /etc/timezone
    7. EXPOSE 8090
    8. ENTRYPOINT java -XX:+PrintFlagsFinal \
    9. -XX:+UnlockExperimentalVMOptions \
    10. -XX:+UseCGroupMemoryLimitForHeap \
    11. $JAVA_OPTS -jar /app.jar
    1. FROM docker-local.art.ocp.csvw.com/mac/node:10 as builder
    2. WORKDIR /app
    3. COPY ./ /app/
    4. RUN npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass
    5. RUN npm install --registry https://registry.npm.taobao.org
    6. RUN npm run build
    7. FROM docker-local.art.ocp.csvw.com/mac/nginx:1.16.1
    8. LABEL io.daocloud.system=build-in
    9. #RUN sudo sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list && apt-get update && apt-get install procps
    10. WORKDIR /app
    11. # copy from node builder
    12. COPY --from=builder /app/dist /usr/share/nginx/html
    13. COPY --from=builder /app/nginx.conf /etc/nginx/nginx.conf
    14. COPY --from=builder /app/run.sh /app/run.sh
    15. # set env default value.
    16. ENV USER_CENTER_URL=http://dmp-user-center:9050 \
    17. HELP_URL=https://guide.daocloud.io/dmp-2.4 \
    18. DMP_META=http://dmp-apollo-configservice:8080 \
    19. TWICE_URL=http://dmp-twice:8765 \
    20. CONFIG_CENTER_URL=http://dmp-apollo-adminservice:8090 \
    21. FATE_URL=http://dmp-fate:9056
    22. ## add permissions for nginx user, https://www.rockyourcode.com/run-docker-nginx-as-non-root-user/
    23. RUN chown -R nginx:nginx /app && \
    24. chown -R nginx:nginx /usr/share/nginx && \
    25. chown -R nginx:nginx /var/cache/nginx && \
    26. chown -R nginx:nginx /var/log/nginx && \
    27. chown -R nginx:nginx /etc/nginx
    28. RUN touch /var/run/nginx.pid && \
    29. chown -R nginx:nginx /var/run/nginx.pid && \
    30. touch /etc/nginx/nginx.conf.old && \
    31. chown -R nginx:nginx /etc/nginx/nginx.conf.old && \
    32. chmod -R 777 /app /usr/share/nginx /var/cache/ /var/log/ /etc/nginx /var/run
    33. USER nginx
    34. EXPOSE 8080
    35. CMD /app/run.sh && nginx -g 'daemon off;'