Docker commit 以官方镜像为基础,修改参数后,变为自己个性镜像- eg:将镜像时区UTC修改成CST

描述:工作中需要写Dockerfile制作镜像,发现生成的镜像都是700M左右,为了更小更方便的制作镜像,看了一些文件,其中高效编写Dockerfile的几条准则,仅为参考。

下面是自己摸索出来的一个方法,简单有效:

步骤:下载官方最小镜像,然后运行,经过修改参数,配置,时区等内容,后用这个容器创建一个新的自己的镜像。

具体步骤:以tomcat为例:

第一步骤下载镜像:
官方默认的tomcat,大小是147M,时区是UTC是协调世界时(Universal Time Coordinated),不是我们需要的,而CST却同时可以代表如下 4 个不同的时区,我们只需要配置China Standard Time就OK了。
Central Standard Time (USA) UT-6:00
Central Standard Time (Australia) UT+9:30
China Standard Time UT+8:00
Cuba Standard Time UT-4:00

docker pull tomcat:7-alpine

第二步骤启动tomcat镜像,并指定容器和主机的映射端口:

docker run -p 8080:8080  tomcat:7-alpine

正常启动后,可以访问:localhost:8080
这里写图片描述
第三步骤进入容器,查看默认时间:

#查看运行的全部容器
sai$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS                    NAMES
949fdc1d4001        tomcat:7-alpine     "catalina.sh run"   3 minutes ago       Up 3 minutes        0.0.0.0:8080->8080/tcp   sad_thompson
#拿到CONTAINER ID 然后进入正在运行容器并以命令行交互
sai:$ docker exec -it 949fdc1d4001 /bin/sh
#进入容器后,查看容器时间date
/usr/local/tomcat # date
Wed Aug  1 07:59:21 UTC 2018
/usr/local/tomcat # 

第四步骤修改容器默认时间UTC修改成CST:
Shanghai时区时间,在centos中/usr/share/zoneinfo/Asia可以拿的,百度盘也放了一份
链接:https://pan.baidu.com/s/1-Zc_nttBCcYaA2Ul9A_s1Q 密码:xwme
这里写图片描述

#首先从主机复制时间文件到容器sudo docker cp host_path containerID:container_path
docker cp Shanghai  949fdc1d4001:/etc/localtime
#然后再修改时区,注意,要进入容器内执行:
echo "Asia/Shanghai" > /etc/timezone
#然后再查询下
/usr/local/tomcat # cat /etc/timezone 

这里写图片描述

第五步骤,Docker commit 命令 根据已修改的容器创建一个新的自己的镜像:
先普及下知识
这里写图片描述
这里写图片描述

#制作镜像-a 是作者,-m是描述
sai:~ ws$ docker commit  -a "Honglei" -m "change time zone:CST" 949fdc1d4001  honglei/mydemo/tomcat7:latest
sha256:4355e2ccc12ebf8c2295e2fcded052152877359e292636f55eed3ed6d64c131d
#查看制作后的镜像,以后再运行或者上传自己的镜像仓库,显示时间就是CST了。
sai:~ ws$ docker images
REPOSITORY                    TAG                 IMAGE ID            CREATED             SIZE
honglei/mydemo/tomcat7        latest              4355e2ccc12e        5 seconds ago       147MB
tomcat                        7-alpine            7ec7cfc3ee20        15 hours ago        147MB

以后在这个tomcat中运行项目,日志时间也是CST,不会再有时差。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

[shenhonglei]

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值