- 本文基于
ubuntu 16.04
环境,用harbor
搭建私有仓库
环境准备
Docker
版本不小于1.10.0
Docker-compose
版本不小于1.6.0
harbor
服务搭建及启动
-
下载Harbor安装文件:
从
Git
上下载指定版本的安装包并解压 -
进入下载文件的目录并配置文件
harbor.cfg
:这里主要设置
hostname
,其他的视情况修改:hostname设置访问地址,可以使用ip、域名。
使用域名访问,需要解析域名。这里以主机文件hosts
,即/etc/hosts
文件为例解析域名,在其中添加内容,比如:127.0.0.1 域名 或者 localhost 域名
-
启动
Harbor
:
-
修改完配置文件后,在当前目录依次执行
sudo ./prepare sudo ./install.sh
- 运行成功,使用
docker ps
可以查看服务是否运行
- 在当前目录执行
docker-compose stop
和docker-compose start
可以分别停止和启动该服务(只能在当前目录停止和启动)
Harbor仓库的使用
- 在网页上访问刚设置的
hostname
,登录Harbor
:
用户名为
admin
,密码为harbor.cfg
配置的密码
- 新建项目test:
当项目设为公开后,任何人都有此项目下镜像的读权限。命令行用户不需要
docker login
就可以拉取此项目下的镜像。
- 修改配置文件
docker.service
:
在终端使用命令
systemctl status docker
,查看文件docker.service
的本地位置并在文件中ExecStart
之后添加--insecureregistry 192.168.126.162
-
重启docker:
systemctl restart docker
-
在终端登录docker:
docker login hostname
这里
hostname
是自己设置的内容 -
给镜像设置标签:
最后一个参数的格式:先是hostname,然后是项目名称,然后是改后的镜像名称和标签。例如
docker tag ubuntu A.B.C.D/test/test_ubuntu:0.0.0
-
push
该镜像到私有仓库docker push A.B.C.D/test/test_ubuntu:0.0.0
从Harbor仓库pull镜像
- 当使用
docker pull ubuntu
时,默认是从官方仓库下载ubuntu
镜像
-
从Harbor私有仓库下载镜像
test_ubuntu:0.0.0
docker pull A.B.C.D/test/test_ubuntu:0.0.0
创建用户并分配权限
- 将创建的用户添加到项目中,就可以在终端使用该用户登录
docker
并下载镜像