docker私有仓库Harbor

一、相关软件下载和安装

#Docker安装
wget  -O /etc/yum.repos.d/docker-ce.repo   https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum install docker-ce -y
systemctl start docker && systemctl enable docker
#Docker-compose安装
curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
#Harbor下载
wget  --continue https://storage.googleapis.com/harbor-releases/release-1.6.0/harbor-offline-installer-v1.6.3.tgz
tar xf harbor-offline-installer-v1.6.3.tgz
cd  harbor

二、Harbor配置

#为配置https,先生成证书
mkdir -pv /data/cert/
openssl genrsa -out /data/cert/server.key 2048
openssl req -x509 -new -nodes -key /data/cert/server.key -subj "/CN=10.6.19.40" -days 3650 -out /data/cert/server.crt #如果是主机名则替换ip
ll -a  /data/cert
#编辑配置
#vim harbor.cfg
hostname = 10.6.19.40 #或使用可以解析的主机名
ui_url_protocol = https
ssl_cert = /data/cert/server.crt
ssl_cert_key = /data/cert/server.key
#执行安装harbor会根据当前目录下的docker-compose.yml开始下载依赖的镜像,检测并按顺序启动各服务
./install.sh
#同时安装漏洞扫描
#./install.sh --with-clair
#查看初始admin账号密码,打开https://10.6.19.40登录
cat harbor.cfg |grep harbor_admin_password
其他可选配置

#修改端口为8080
#vim docker-compose.yml
ports:
      - 8080:80

三、Harbor管理

#使用docker-compose管理(必须与docke-compose.yml在同一目录)
docker-compose --help
sudo docker-compose stop
sudo docker-compose start
sudo docker-compose ps
#要更改Harbor的配置,先停止现有的Harbor实例并进行更新harbor.cfg
docker-compose down -v
vim harbor.cfg
#然后运行prepare脚本来填充配置。最后重新创建并启动Harbor的实例
./prepare
docker-compose up -d
#docker-compose -f docker-compose.yml up -d
#删除Harbor 的容器,同时保留图像数据和Harbor的数据库文件在文件系统上:
docker-compose down -v
#删除Harbor 的数据库和图像数据(为了干净的重新安装):
rm -r /data/database
rm -r /data/registry

四、Harbor镜像管理

1、Harbor新建test项目

2、客户端设置:

#vi /etc/docker/daemon.json
{
  "registry-mirrors": ["https://dwsyrsrh.mirror.aliyuncs.com"],
  "insecure-registries": ["10.6.19.40"]
}

3、重启docker,登录镜像仓库

systemctl restart docker
docker login 10.6.19.40

4、打标签,上传镜像到仓库

docker tag mysql:5.6 10.6.19.40/test/mysql:5.6
docker push 10.6.19.40/test/mysql:5.6
#docker pull 10.6.19.40/test/mysql:5.6

五、复制镜像

1、在仓库管理新建目标

image.png

2、在复制管理新建规则

image.png

六、漏洞扫描的安装

./prepare --with-clair
docker-compose down
docker-compose -f docker-compose.yml -f docker-compose.clair.yml up -d


猜你喜欢

转载自blog.51cto.com/9473774/2348201