crontab sh定时脚本,备份docker容器,push镜像仓库

将本地的镜像上传到镜像仓库,要先登陆到镜像仓库
https://hub.docker.com/
注册账号密码,创建仓库

#登录账号密码
docker login
docker commit :从容器创建一个新的镜像。

语法
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
OPTIONS说明:

-a :提交的镜像作者;

-c :使用Dockerfile指令来创建镜像;

-m :提交时的说明文字;

-p :在commit时,将容器暂停。
docker push : 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库

语法
docker push [OPTIONS] NAME[:TAG]
OPTIONS说明:

--disable-content-trust :忽略镜像的校验,默认开启
docker rmi : 删除本地一个或多少镜像。

语法
docker rmi [OPTIONS] IMAGE [IMAGE...]
OPTIONS说明:

-f :强制删除;

--no-prune :不移除该镜像的过程镜像,默认移除;
#脚本示例 定期备份禅道镜像push到远程镜像仓库


dashen/worker :自己打ID标识/容器名称
zentao${cur_date}:tag名称+时间节点
38d60516b62c: CONTAINER ID


docker.sh
#!/bin/bash
cur_date=$(date +%Y%m%d)
echo $cur_date
cmd="docker commit -a 'dashen' -m 'zentao' 38d60516b62c  dashen/worker:zentao${cur_date}"
echo $cmd
eval $cmd

cmd="docker push dashen/worker:zentao${cur_date}"
echo $cmd
eval $cmd

cmd="docker rmi dashen/worker:zentao${cur_date}"
echo $cmd
eval $cmd
#crontab 三天备份一次
6 6 */3 * * sh /home/docker.sh