首页 > 其他分享 >镜像搬运工 skopeo简单用法

镜像搬运工 skopeo简单用法

时间:2023-11-24 15:23:20浏览次数:33  
标签:tmp -- influxdb skopeo 镜像 搬运工 docker

https://blog.51cto.com/u_16099262/6928212
https://blog.csdn.net/easylife206/article/details/125093122
https://github.com/containers/skopeo

1 安装

dnf -y install skopeo
  1. 本地搭建私有仓库
#安装docker
dnf install docker
#下载并启动一个register容器,创建本地私有仓库
docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry

列出私有仓库所有镜像
curl http://10.24.9.97:5000/v2/_catalog
返回:{"repositories":["influxdb"]}
浏览器访问:http://10.24.9.97:5000/v2/_catalog

3.修改docker配置文件

vim /etc/docker/daemon.json

{
    "insecure-registries": ["10.24.9.97:5000"]
}
重启docker:systemctl restart docker

4.登陆dockerhub仓库

在使用 skopeo 前如果 src 或 dest 镜像是在 registry 仓库中的并且配置了非 public 的镜像需要相应的 auth 认证, 此时我们可以使用 docker login 或者 skopeo login 的方式登录到 registry 仓库,然后默认会在~/.docker目录下生成 registry 登录配置文件 config.json ,该文件里保存了登录需要的验证信息,skopeo 拿到该验证信息才有权限往 registry push 镜像。

docker login #输入用户名密码
或者skopeo login docker.io

会生成登陆配置文件保存在.docker/config.json中,类似下面
# cat ~/.docker/config.json
{
	"auths": {
		"https://index.docker.io/v1/": {
			"auth": "cHNoeW1zOnNoaXlhbjgyMw=="
		}
	}
}#

5.skopeo copy-镜像拷贝

远端镜像地址:docker.io/pshyms/influxdb:latest

1)首先拷贝到本地仓库
skopeo copy docker://docker.io/pshyms/influxdb:latest docker://10.24.9.97:5000/influxdb:v1 --src-tls-verify=false --dest-tls-verify=false

命令中的tls-verify=false是为了解决https和http传输时不兼容报错的问题

2)也可以拷贝到本地目录,/tmp/mytest目录要先创建
skopeo copy  --insecure-policy --src-tls-verify=false docker://docker.io/pshyms/influxdb:latest dir:/tmp/mytest/influxdb

6.镜像同步-skopeo sync

1)从本地镜像仓库把influxdb所有版本镜像,同步到本地目录/tmp中
skopeo sync --insecure-policy --src-tls-verify=false --src docker --dest dir 10.24.9.97:5000/influxdb /tmp/influx

2)从本地/tmp目录同步到docker的hub仓库中的pshyms用户下
skopeo sync --insecure-policy --dest-tls-verify=false --src dir --dest docker /tmp/influx pshyms 
此时登陆docker,即可看到influx:v1这个镜像


标签:tmp,--,influxdb,skopeo,镜像,搬运工,docker
From: https://www.cnblogs.com/regit/p/17853809.html

相关文章

  • docker和虚拟化,docker安装和配置, 镜像操作,容器操作
    1docker和虚拟化......
  • uos挂载镜像和配置yum源
    1、挂载镜像mkdir/uos//创建挂载目录uosmount/dev/sr0/uos//把镜像挂载到uos目录上vi/etc/fstab//永久挂载/dev/sr0/uosiso9660defaults00mount-adf-Th//查看挂载是否成功2、配置yum源cd/etc/yum.repos.d///进入目录rm-rf*//移除viuos.repo......
  • Harbor 设置保留镜像版本数量
    Harbor设置保留镜像版本数量方式一:修改配置您可以通过在Harbor的配置文件中设置保留镜像版本数量来实现。您需要编辑`/etc/harbor/harbor.yml`文件,找到以下配置项:#镜像保留策略image_cleanup:enabled:falseretention_policy:keep_nkeep_n:10 将`enabled`......
  • 比官网镜像小了1GB!微软媒体创建工具已支持下载Win11 23H2
    近日微软正式更新了媒体创建工具,现在用户可以通过该工具安装最新的Windows1123H2版本。微软前不久推出了Windows1123H2正式版本更新,不过当时并未更新媒体创建工具,依然停留在Windows1122H2版本,据微软表示其正在优化媒体创建工具以减少安装包体积。此次发布的新版本也没有辜......
  • Maven settings.xml镜像配置
    <!--默认的配置--><mirror><id>maven-default-http-blocker</id><mirrorOf>external:http:*</mirrorOf><name>PseudorepositorytomirrorexternalrepositoriesinitiallyusingHTTP.</name>......
  • Centos 7 修改YUM镜像源地址为阿里云镜像地址
    安装wgetyuminstall-ywget进入目录cd/etc/yum.repos.d/创建目录mkdirbackup默认源配备份mvC*backup/下载阿里云yum源wget-O/etc/yum.repos.d/CenOS-Base.repohttps://mirrors.aliyun.com/repo/Centos-7.repo清除旧缓存yumcleanall创建新缓存yummakecac......
  • (lora训练补充数据)父目录镜像
    importosfromPILimportImagedefflip_and_duplicate_image(image_path,output_path):"""Flipanimagehorizontallyandsaveacopywithasuffix."""try:withImage.open(image_path)asimg:......
  • docker 常用命令、安装、镜像加速配置
    docker笔记,请参考。常用命令官方学习网站,生涩。网上资料千奇百怪,建议到官网验证。可以用AI学习一点,但经常有错,像文心一言、通义千问。https://docs.docker.com/engine/reference/run/以ubantu为例,你可以在docker安装一个ubantu容器。你首先是有要有一个镜像,可以在hub.do......
  • 2023-11-18:用go语言,如果一个正方形矩阵上下对称并且左右对称,对称的意思是互为镜像, 那
    2023-11-18:用go语言,如果一个正方形矩阵上下对称并且左右对称,对称的意思是互为镜像,那么称这个正方形矩阵叫做神奇矩阵。比如:1551633663361551这个正方形矩阵就是神奇矩阵。给定一个大矩阵n*m,返回其中神奇矩阵的数目。1<=n,m<=1000。来自左程云。答案2023-11-18:go,c......
  • 2023-11-18:用go语言,如果一个正方形矩阵上下对称并且左右对称,对称的意思是互为镜像, 那
    2023-11-18:用go语言,如果一个正方形矩阵上下对称并且左右对称,对称的意思是互为镜像,那么称这个正方形矩阵叫做神奇矩阵。比如:1551633663361551这个正方形矩阵就是神奇矩阵。给定一个大矩阵n*m,返回其中神奇矩阵的数目。1<=n,m<=1000。来自左程云。答案2......