Sign inSign up

kuluseky/app-separate

By kuluseky

•Updated almost 2 years ago

JDK8、JDK11分离式部署镜像

Image
0

200

kuluseky/app-separate repository overview

⁠JDK分离式部署镜像

⁠Usage

firewall-cmd --zone=public --add-port=8888/tcp --permanent && firewall-cmd --reload
docker run -di --name app-separate --restart=unless-stopped -p 8888:8888 -v /application/app:/app -v /application/upFiles:/opt/upFiles kuluseky/app-separate:jdk8x86

⁠Dockerfile

# Spring Boot容器打包 Dockerfile
# 防火墙:firewall-cmd --zone=public --add-port=8888/tcp --permanent && firewall-cmd --reload
# 构建容器:docker build -t app-separate -f Dockerfile_Separate .; docker save -o ./app-separate app-separate
# 第一次载入镜像:docker load -i app-separate
# 启动:docker run -di --name app-container --restart=unless-stopped -p 9999:8888 -v /application/app:/app -v /application/upFiles:/opt/upFiles app-separate

# FROM java:8u111
FROM anapsix/alpine-java:8_server-jre_unlimited
WORKDIR /

# 时区
# RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && dpkg-reconfigure -f noninteractive tzdata
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
# 文件目录
RUN mkdir -p /opt/upFiles && mkdir -p /opt/webapp

# 字体(解决流程图部署乱码,请设置好字体目录位置)
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories && apk update && apk --no-cache --purge -U upgrade
RUN apk add --no-cache --purge -uU ttf-dejavu fontconfig && rm -rf /var/cache/apk/* && mkdir -p /usr/share/fonts/new/
# 字体直接打入包中
COPY fonts/*.ttf /usr/share/fonts/new/
RUN fc-cache
# 或者字体挂载出来
# VOLUME /usr/share/fonts/new/

# 设置字符集(防止应用日志乱码)
ENV LANG=C.UTF-8 LC_ALL=C.UTF-8
# 应用目录
ENV APP /app
# 应用入口
ENV APP_NAME=main.jar
# 依赖文件夹,设置为空时,不以配置分离式启动
ENV APP_LIB_PATH=lib APP_CONFIG_PATH=config
# 配置启用配置文件
ENV APP_PROFILE_ACTIVE=prod APP_PORT=8888
# 特殊JVM参数
ENV APP_JVM_OPTION="-Djava.security.egd=file:/dev/./urandom -Xms2048m -Xmx2048m"

# 暴露端口
EXPOSE $APP_PORT/tcp
# 应用-入口文件夹(必须)
VOLUME $APP
# 应用-本地文件上传目录(建议)
VOLUME /opt/upFiles
# 应用-本地webapp目录(可选)
# VOLUME /opt/webapp

CMD echo "环境变量: ${PATH}" \
    && echo "中文字体:" && fc-list :lang=zh \
    && echo "启动app: $APP" && cd $APP && ls . -al \
    && if [ -n "$APP_LIB_PATH" ] && [ -n "$APP_CONFIG_PATH" ]; then \
           java $APP_JVM_OPTION \
                     -Dloader.path=$APP_LIB_PATH,$APP_CONFIG_PATH \
                     -Dspring.profiles.active=$APP_PROFILE_ACTIVE \
                     -Dserver.port=$APP_PORT \
                     -jar $APP_NAME; \
       else \
           java $APP_JVM_OPTION \
                    -Dspring.profiles.active=$APP_PROFILE_ACTIVE \
                    -Dserver.port=$APP_PORT \
                    -jar $APP_NAME; \
       fi

Tag summary

Content type

Image

Digest

sha256:1ecf5f1da…

Size

69.8 MB

Last updated

almost 2 years ago

docker pull kuluseky/app-separate:jdk8x86_zh_font