1.Docker镜像定制
说明镜像定制有以下方式,可以根据实际情况进行镜像定制
-
Docker commit 定制镜像
说明:将当前运行的容器(包括自定义的配置),重新打包成镜像
docker commit \
--author "len" \
--message "镜像修改内容" \
容器名称 \
镜像名称:镜像版本
以上指令,直接生成镜像,可以通过docker images查看镜像
理解和使用:
1. 可以比较直观理解镜像分层存储的概念,修改时候,除当前层外,之前的每一层都不会发生改变,每修改一次,镜像就会更臃肿一次。
2. 对镜像的操作是黑箱,生成黑箱镜像。
3. 可用于镜像版本的回滚,一般配合save使用
- Dockerfile 定制镜像
- 迁移镜像
-
通过harbor连接私服
上传私服的步骤
1.修改本地docker的配置文件# 修改本地docker服务配置 vim /usr/lib/systemd/system/docker.service # 修改配置,增加以下配置项 --insecure-registry 配置项 ExecStart=... --insecure-registry=192.168.50.112
2.重启docker,使配置生效
systemctl daemon-reload
systemctl restart docker
3.harbor登录
#登录仓库私服 输入 用户名 / 密码
docker login 192.168.50.112
4.打tag
# 打tag 只有这种格式的tag,才能上传到服务器,否则回报错 ‘denied: requested access to the resource is denied’
# docker tag 本地镜像名称:本地镜像tag [new tag的格式] horbar的IP / harbar的项目名称 / 镜像名称:镜像tag
docker tag kafka:2.11 192.168.50.112/play/kafka:v2.11_scare
5.上传镜像
docker push 192.168.50.112/tip/kafka:v2.11_scare
2.Docker的 save/load 与 export/import 的区别
- save/load 将一个镜像导出为文件,会保存该镜像的全部历史记录,比较大,一般是 commit + save 与 export进行对比使用 。
- save/load 可以将多个镜像导出为一个文件。
- export/import 直接将当前容器导出,保存的镜像只保留容器当前的状态; import导进去之后,形成镜像。
#export
docker export -o /tmp/kafka.tar kafka
#import
docker import /tmp/kafka.tar kafka:v-len-1.2
3. SpringBoot 自动打docker镜像,docker服务报错:Docker : iptables failed/iptables: No chain/target/match by that name ,如何解决?
我做了如下操作,导致报错:1 开启防火墙,重启docker 2 要开通docker服务远程访问2375(端口),配置好重启docker,再关闭防火墙,远程打docker报了这个错误。
解决方法: 再重启一次docker即可,重启命令:systemctl restart docker.service
网友评论