searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

kolla openstack 容器镜像拉取打包

2023-06-16 06:42:09
177
0
 

本文参考:https://blog.csdn.net/networken/article/details/106717259

一、镜像地址

使用kolla-ansible部署openstack集群时需要从dockerhub拉取镜像:

https://hub.docker.com/u/kolla/

kolla所有组件的镜像名称在kolla项目中可以找到:

https://github.com/openstack/kolla/tree/master/docker

拉取项目到本地:

1、git安装和配置<略>
2、拉取相应版本

打开git网址:https://github.com/openstack/kolla

参数:-b 执行版本

git clone -b stable/train https://github.com/openstack/kolla.git
ls -R kolla/docker/ |grep ":" |awk -F "/" '{print $4}' > imagename.txt   

vim imagename.txt 

删除空行 ##   **:g/^$/d**

去掉:号     ## **:%s/://g

得到所有镜像的名称

3、kolla镜像格式有一定规则,例如:
kolla/centos-source-nova-compute:train

仓库名称/OS版本-包类型-组件名称:openstack版本

 

二、拉取镜像

1、拉取镜像到本地linux服务器上

前提:安装好docker-ce并配置了加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
   "registry-mirrors": [
       "https://1nj0zren.mirror.aliyuncs.com",
       "https://docker.mirrors.ustc.edu.cn",
       "http://f1361db2.m.daocloud.io",
       "https://registry.docker-cn.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
for i in `cat imagename.txt`;do docker pull kolla/centos-source-$i:train;done

 

2、创建私有仓库

Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露5000端口,就可以使用了

docker pull registry:2

docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2

Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的/opt/registry目录挂载到该目录,即可实现将镜像保存到主机的/opt/registry目录了,注意/opt/registry 要足够大,建议重新挂载

curl 127.0.0.1:5000/v2   ##验证
3、通过docker tag将该镜像标志为要推送到私有仓库
for i in `docker images |grep  kolla |awk '{print $1}'`;do docker tag $i:train localhost:5000/$i:train;done

 

4、通过 docker push 命令将 镜像 push到私有仓库中
for i in `docker images |grep localhost |awk '{print $1}'`;do docker push $i:train;done
5、验证
curl 127.0.0.1:5000/v2/_catalog

 

三、将镜像/opt/registry下的目录打包压缩成tar.gz文件,方便随处使用

1、打包压缩
tar -zcvf kolla-train.tar.gz ./   #将此目录下的所有文件进行打包压缩
2、解压使用
mkdir /opt/registry/

tar -zxf kolla-train.tar.gz -C /opt/registry/

docker run -d -p 4000:5000 -v /opt/registry:/var/lib/registry --restart=always \
--name registry registry:train

curl x.x.x.x:4000/v2/_catalog #验证是否成功
3、配置docker的镜像下载地址
mkdir -p /etc/systemd/system/docker.service.d



tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF'
[Service]
MountFlags=shared
EOF

vim /usr/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd --insecure-registry x.x.x.x:4000 --registry-mirror=http://f2d6cb40.m.daocloud.io

systemctl daemon-reload
systemctl restart docker
0条评论
0 / 1000
马****栋
1文章数
0粉丝数
马****栋
1 文章 | 0 粉丝
马****栋
1文章数
0粉丝数
马****栋
1 文章 | 0 粉丝
原创

kolla openstack 容器镜像拉取打包

2023-06-16 06:42:09
177
0
 

本文参考:https://blog.csdn.net/networken/article/details/106717259

一、镜像地址

使用kolla-ansible部署openstack集群时需要从dockerhub拉取镜像:

https://hub.docker.com/u/kolla/

kolla所有组件的镜像名称在kolla项目中可以找到:

https://github.com/openstack/kolla/tree/master/docker

拉取项目到本地:

1、git安装和配置<略>
2、拉取相应版本

打开git网址:https://github.com/openstack/kolla

参数:-b 执行版本

git clone -b stable/train https://github.com/openstack/kolla.git
ls -R kolla/docker/ |grep ":" |awk -F "/" '{print $4}' > imagename.txt   

vim imagename.txt 

删除空行 ##   **:g/^$/d**

去掉:号     ## **:%s/://g

得到所有镜像的名称

3、kolla镜像格式有一定规则,例如:
kolla/centos-source-nova-compute:train

仓库名称/OS版本-包类型-组件名称:openstack版本

 

二、拉取镜像

1、拉取镜像到本地linux服务器上

前提:安装好docker-ce并配置了加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
   "registry-mirrors": [
       "https://1nj0zren.mirror.aliyuncs.com",
       "https://docker.mirrors.ustc.edu.cn",
       "http://f1361db2.m.daocloud.io",
       "https://registry.docker-cn.com"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
for i in `cat imagename.txt`;do docker pull kolla/centos-source-$i:train;done

 

2、创建私有仓库

Docker 官方提供了一个搭建私有仓库的镜像 registry ,只需把镜像下载下来,运行容器并暴露5000端口,就可以使用了

docker pull registry:2

docker run -d -v /opt/registry:/var/lib/registry -p 5000:5000 --name myregistry registry:2

Registry服务默认会将上传的镜像保存在容器的/var/lib/registry,我们将主机的/opt/registry目录挂载到该目录,即可实现将镜像保存到主机的/opt/registry目录了,注意/opt/registry 要足够大,建议重新挂载

curl 127.0.0.1:5000/v2   ##验证
3、通过docker tag将该镜像标志为要推送到私有仓库
for i in `docker images |grep  kolla |awk '{print $1}'`;do docker tag $i:train localhost:5000/$i:train;done

 

4、通过 docker push 命令将 镜像 push到私有仓库中
for i in `docker images |grep localhost |awk '{print $1}'`;do docker push $i:train;done
5、验证
curl 127.0.0.1:5000/v2/_catalog

 

三、将镜像/opt/registry下的目录打包压缩成tar.gz文件,方便随处使用

1、打包压缩
tar -zcvf kolla-train.tar.gz ./   #将此目录下的所有文件进行打包压缩
2、解压使用
mkdir /opt/registry/

tar -zxf kolla-train.tar.gz -C /opt/registry/

docker run -d -p 4000:5000 -v /opt/registry:/var/lib/registry --restart=always \
--name registry registry:train

curl x.x.x.x:4000/v2/_catalog #验证是否成功
3、配置docker的镜像下载地址
mkdir -p /etc/systemd/system/docker.service.d



tee /etc/systemd/system/docker.service.d/kolla.conf <<-'EOF'
[Service]
MountFlags=shared
EOF

vim /usr/lib/systemd/system/docker.service

ExecStart=/usr/bin/dockerd --insecure-registry x.x.x.x:4000 --registry-mirror=http://f2d6cb40.m.daocloud.io

systemctl daemon-reload
systemctl restart docker
文章来自个人专栏
文章 | 订阅
0条评论
0 / 1000
请输入你的评论
0
0