文章目录

  • 一、docker-compose安装
  • 1.1 介绍
  • 1.2 安装
  • 二、Harbor安装
  • 2.1 Harbor安装包下载
  • 2.2 解压
  • 2.3 修改harbor.yml
  • 2.3 执行install.sh
  • 2.4 登录Harbor
  • 2.5 重启Harbor
  • 三、push镜像
  • 3.1 新建项目
  • 3.2 admin登陆
  • 3.3 docker push


一、docker-compose安装

1.1 介绍

docker-compose是基于docker的开源项目,托管于github上,由python实现,调用 docker服务的API负责实现对docker容器集群的快速编排,即通过一个单独的yaml文件,来定义一组相关的容器来为一个项目服务。
所以,docker-compose默认的管理对象是项目,通过子命令的方式对项目中的一组容器进行生命周期的管理。

1.2 安装

下载执行文件

curl -L https://get.daocloud.io/docker/compose/releases/download/1.27.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

授予执行权限

sudo chmod +x /usr/local/bin/docker-compose

指向环境变量的软链

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

查看版本

docker-compose version

docker有层拉取不下来 docker collabora_新建项目

二、Harbor安装

2.1 Harbor安装包下载

wget https://github.com/vmware/harbor/releases/download/v1.9.2/harbor-online-installer-v1.9.2.tgz

2.2 解压

tar zxvf harbor-online-installer-v1.1.2.tgz

2.3 修改harbor.yml

主要是hostname 和port

docker有层拉取不下来 docker collabora_docker有层拉取不下来_02

2.3 执行install.sh

./prepare
./install.sh

Harbor服务就会根据当前安装的docker-compose开始下载依赖的镜像,检测并按照顺序依次启动各个服务

docker有层拉取不下来 docker collabora_新建项目_03


安装完之后启动的相关容器

docker有层拉取不下来 docker collabora_docker_04

2.4 登录Harbor

初始用户名:admin 密码:Harbor12345

docker有层拉取不下来 docker collabora_docker有层拉取不下来_05

2.5 重启Harbor

harbor 通过docker-compose.yml配置文件的形式管理
停止harbor,停止容器,删除已经在compose文件中定义的和匿名的附在容器上的数据卷

docker-compose down -v

启动容器,在后台运行服务容器

docker-compose up -d

三、push镜像

3.1 新建项目

新建项目设置不公开。当项目设为公开后,任何人都有此项目下镜像的读权限。命令行用户不需要“docker login”就可以拉取此项目下的镜像。

docker有层拉取不下来 docker collabora_docker_06


新建项目完毕后,我们就可以用admin账户提交本地镜像到Harbor仓库了。

3.2 admin登陆

docker login 192.168.2.179

报错

docker有层拉取不下来 docker collabora_docker_07


这是因为docker1.3.2版本开始默认docker registry使用https,这里Harbor默认设置的http的方式,所以当执行用docker login、pull、push等命令操作非https的docker registry的时候就会报错。解决

可以修改配置/etc/docker/daemon.json,如果没有就创建一个。增加"insecure-registries":[“hostname:port”]

docker有层拉取不下来 docker collabora_docker_08


假如不行,请配置https访问,配置方法:Configure HTTPS Access to Harbor成功

docker有层拉取不下来 docker collabora_docker_09

3.3 docker push

docker tag hello-world 192.168.136.131:5001/library/hw:alpine
docker push 192.168.136.131:5001/library/hw:alpine

打tag

docker有层拉取不下来 docker collabora_新建项目_10


推送成功

docker有层拉取不下来 docker collabora_docker有层拉取不下来_11