在给Java程序封装镜像时,使用的基础镜像动辄上百M,还需要每次部署的时候挂载时区等问题,不如自己封装一个镜像,供之后使用。
这里使用Alpine Linux(3.9) 安装OpenJDK 1.8及部分常用工具并修改时区:
文末提供Dockerfile
拉取alpine镜像
docker pull alpine
运行并进入容器
docker run -itd --name alpine-java alpine
docker exec -it alpine-java sh
安装OpenJDK等
apk update
apk add openjdk8 busybox tzdata curl
修改时间
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date
这里系统时间虽然修改过来了,但是之后运行Java程序时,时间任然相差8小时,所以需要添加如下
修改Java时区
echo Asia/Shanghai > /etc/timezone
apk del tzdata
rm -rf /tmp/ /var/cache/apk/
封装镜像并推送到仓库
docker commit alpine-java ×××debiaobiao/alpine-java
docker push ×××debiaobiao/alpine-java
懒的朋友可以直接拉做好的:
docker pull ×××debiaobiao/alpine-java
Dockerfile:From alpine
MAINTAINER ×××debiaobiao
RUN apk update &&
apk add openjdk8 curl busybox tzdata &&
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime &&
echo Asia/Shanghai > /etc/timezone &&
apk del tzdata &&
rm -rf /tmp/ /var/cache/apk/
喜欢的点点关注,点点赞。
对Java技术,架构技术感兴趣的同学,欢迎加QQ群585550789,一起学习,相互讨论。
群内已经有小伙伴将知识体系整理好(源码,笔记,PPT,学习视频),欢迎加群领取。