容器部署 Spring Boot
Spring Boot image
创建
DockerfileFROM openjdk:17.0.1-jdk-slim
RUN sed -i s@/deb.debian.org/@/mirrors.aliyun.com/@g /etc/apt/sources.list
RUN sed -i s@/security.debian.org/@/mirrors.aliyun.com/@g /etc/apt/sources.list
RUN apt-get clean
RUN apt-get update
RUN set -eux; \
apt-get update && apt-get install -y --no-install-recommends \
# java.lang.UnsatisfiedLinkError: /usr/local/openjdk-11/lib/libfontmanager.so: libfreetype.so.6: cannot open shared object file: No such file or directory
# java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11FontManager
# https://github.com/docker-library/openjdk/pull/235#issuecomment-424466077
fontconfig libfreetype6 \
; \
rm -rf /var/lib/apt/lists/*
VOLUME ["/tmp"]
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Duser.timezone=GMT+8","-jar"]
CMD ["/program/app.jar"]构建镜像
docker build -f ./Dockerfile -t qiyi/openjdk:17.0.1-jdk-slim .
服务端应用
任务执行器
dev
docker run -d -t \
-p 9999:9999 \
--restart=unless-stopped \
--name exector-dev \
-v /program/xxl-exector-job-dev/lib/app.jar:/program/app.jar:ro \
-v /program/xxl-exector-job-dev/log:/var/log/xxl-job \
-e "SPRING_PROFILES_ACTIVE=dev" \
qiyi/openjdk:17.0.1-jdk-slimbprod
docker run -d -t \
-p 9999:9999 \
--restart=unless-stopped \
--name xxl-job-exec \
-v /program/xxl-job-exec/lib/app.jar:/program/app.jar:ro \
-v /program/xxl-job-exec/log:/var/log/xxl-job \
-e "SPRING_PROFILES_ACTIVE=bprod" \
qiyi/openjdk:17.0.1-jdk-slimkprod
docker run -d -t \
-p 9999:9999 \
--restart=unless-stopped \
--name xxl-job-exec \
-v /program/xxl-job-exec/lib/app.jar:/program/app.jar:ro \
-v /program/xxl-job-exec/log:/var/log/xxl-job \
-e "SPRING_PROFILES_ACTIVE=kprod" \
qiyi/openjdk:17.0.1-jdk-slim
admin
dev
docker run -d -t \
-p 20004:9095 \
--restart=unless-stopped \
--name ladmin \
-v /program/line2-admin/lib/app.jar:/program/app.jar:ro \
-v /program/line2-admin/log:/var/log/line2/admin \
-e "SPRING_PROFILES_ACTIVE=dev" \
qiyi/openjdk:17.0.1-jdk-slimbprod
docker run -d -t \
-p 20004:9095 \
--restart=unless-stopped \
--name linev2-admin \
-v /program/linev2-admin/lib/app.jar:/program/app.jar:ro \
-v /program/linev2-admin/log:/var/log/line2/admin \
-e "SPRING_PROFILES_ACTIVE=bprod" \
qiyi/openjdk:17.0.1-jdk-slimkprod
docker run -d -t \
-p 20004:9095 \
--restart=unless-stopped \
--name linev2-admin \
-v /program/linev2-admin/lib/app.jar:/program/app.jar:ro \
-v /program/linev2-admin/log:/var/log/line2/admin \
-e "SPRING_PROFILES_ACTIVE=kprod" \
qiyi/openjdk:17.0.1-jdk-slim