1.修改容器时间,但重启后失效
//进入容器
docker exec -it container_id /bin/bash
//修改容器时区为北京时间
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
//查看时间
date
2.启动脚本处理
外加配置
#这是基础镜像
FROM java:8u111
VOLUME /tmp2
#复制jar包到镜像中,并且将名字改成app.jar
ADD conf/ /back/conf/
ADD server-1.0.0-SNAPSHOT.jar /back/app.jar
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' >/etc/timezone
#在容器启动的时候运行命令,来启动我们的项目(这其实就是一段Linux命令)
EXPOSE 5001
WORKDIR /back
ENTRYPOINT ["java","-cp","app.jar:/back/conf/.","-Duser.timezone=GMT+08","-Dloader.main=com.hongcheng.Application","org.springframework.boot.loader.PropertiesLauncher"]
普通java程序
# java 是一个已有的包含 jdk 的镜像
FROM java:8u111
# 作者签名
MAINTAINER lujun(434998516@qq.com)
# 简化 jar 的名字路径 (#:表示注释掉)
#COPY ./jars/energy-boot-1.0.jar /app.jar
ADD ./target/policy-backend-0.0.1-SNAPSHOT.jar ./app.jar
# 执行 java -jar 命令 (CMD:在启动容器时才执行此行。RUN:构建镜像时就执行此行) 启动指定时区-Duser.timezone=GMT+08
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& echo 'Asia/Shanghai' >/etc/timezone
CMD java -jar -Duser.timezone=GMT+08 /app.jar
# 设置对外端口为 8080
EXPOSE 8088