1.环境准备
(1).安装CentOS7.6系统
(2).安装Docker(必须是>=17.06.0+)
配置阿里云Docker Yum源
设置存储库
yum install -y yum-utils device-mapper-persistent-data lvm2
使用Aliyun Docker
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
查看Docker版本
yum list docker-ce --showduplicates
安装Docker最新版本
yum install docker-ce
查看版本
启动Docker服务
systemctl enable docker
systemctl start docker
配置docker加速器(阿里云加速器)
vim /etc/docker/daemon.json
"registry-mirrors": ["https://你自己的.mirror.aliyuncs.com"]
重启docker
systemctl restart docker
2.安装docker-compose
官方下载地址:https://github.com/docker/compose/releases
下载并拷贝到对应的位置
curl -L https://github.com/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
为docker-compose添加可执行权限
chmod +x /usr/local/bin/docker-compose
验证查看docker-compose版本
docker-compose --version
3.安装Harbor
Harbor支持在线和离线安装方式,这里,我们使用离线方式,先下载Harbor安装包:
官方下载地址:https://github.com/goharbor/harbor/releases
wget https://github-production-release-asset-2e65be.s3.amazonaws.com/50613991/456bbd00-4f2e-11ea-98ff-0e673c1c6893?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20200225%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20200225T012856Z&X-Amz-Expires=300&X-Amz-Signature=83459fc93778234dc6fece2c8f60bd94381d480f16a86789500f16fcfd687652&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dharbor-offline-installer-v1.10.1.tgz&response-content-type=application%2Foctet-stream
解压离线安装包
tar -zxvf harbor-offline-installer-v1.10.1.tgz
将其安装到/opt目录下
mv harbor /opt/ cd /opt
编辑配置文件harbor.yml
cd harbor
vim harbor.yml
hostname: 10.2.3.90#IP地址或域名 http: port: 80 #https: # port: 443 # certificate: xxx # private_key: xxx harbor_admin_password: 123456 # Web端admin用户密码 database: password: root123 data_volumn: /data
安装Harbor
./install.sh
出现以下提示证明安装已经完成
4.登录私服仓库
(1).web界面(用户名:admin 密码:123456)
http://10.2.3.90/harbor/
(2).命令行登陆(远程登录)
可以采用以下两种方法:
方法1:
vim /etc/docker/daemon.json
{ "insecure-registries": [ "10.2.3.90" ] }
如果有多个ip,按照下图操作即可
方法2:
vim /etc/sysconfig/docker
OPTIONS='--selinux-enabled --log-driver=journald --signature-verification=false --insecure-registry=10.2.3.90'
目前我采用方法1,修改完成后重启docker
service docker restart
此时就可以登陆私服了
docker login 10.2.3.90
5.上传本地镜像
首先在Harbor上新创建一个项目供上传使用(此处创建test项目)
在远程机器上从Docker Hub下载HelloWorld上传到私有仓库
docker pull hello-world
此时镜像已经下载到本地,给本地镜像打标签
docker tag docker.io/hello-world:latest 10.2.3.90/test/hello-world:v1.0
推送镜像到远程仓库harbor上
docker push 10.2.3.90/test/hello-world:v1.0
此时在界面上查看
6.从远程上拉取镜像
首先删除镜像(如果存在的话)
docker rm $(docker ps -a -q) #remove删除所有容器(如果不存在就会报错) docker rmi 10.2.3.90/test/hello-world:v1.0 #删除镜像
拉取(此处测试在远程机器上拉取)
docker pull 10.2.3.90/test/hello-world:v1.0
运行镜像
docker run 10.2.3.90/test/hello-world:v1.0
7.启动或关闭Harbor
cd /opt/harbor
docker-compose stop
docker-compose start
可以通过help查看其他项
8.删除容器创建容器
cd /opt/harbor
停止并删除containers, networks, images, and volumes docker-compose down -v 创建并启动容器 docker-compose up -d
9.下表列出了部署Harbor时部署的组件
***********************************************问题解决********************************************************
1.ui界面部分项显示为英文code,解决办法换个浏览器就解决问题(或者换台电脑没有此问题)
官方网址:https://goharbor.io/
官方demo:https://demo.goharbor.io (用户名:admin 密码:Harbor12345)
docker操作手册:https://docs.docker.com/engine/reference/commandline/login/#credentials-store