本文介绍在CentOS/RHEL/Ubuntu操作系统上安装和配置Red Hat Quay Registry的方法,本文主要讨论用于设置单个实例Quay Registry的步骤,此设置用于POC目的。硬件最低要求是:内存:4GB、CPU:2、磁盘空间:30GB、至少10GB的磁盘空间用于docker存储(运行3个容器)、至少10GB的磁盘空间用于Quay本地存储(CEPH或其他本地存储可能需要更多内存)。
一、安装Docker Engine
Docker用于运行Quay容器,请参考下面文章:
二、安装和部署数据库
你可以选择在容器或VM上运行数据库服务器,对于我的设置,MariaDB数据库安装在将托管Quay的虚拟机上。
1、CentOS/RHEL:
$ sudo yum -y install mariadb-server mariadb
2、Ubuntu:
$ sudo apt install mariadb-server
安装后,启动并启用服务器以启动时启动:
sudo systemctl enable --now mariadb
保护数据库服务器安装:
mysql_secure_installation
现在为Quay创建一个数据库:
CREATE DATABASE quay_registry;
GRANT ALL ON quay_registry.* TO quay_registry@'%' IDENTIFIED BY "Ain3IH0aing7";
FLUSH PRIVILEGES;
QUIT;
三、安装和配置Redis
我们还将在虚拟机上安装Redis服务器,而不是在容器中。
1、在CentOS/RHEL上:
sudo rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo rpm -ivh https://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum install -y redis --enablerepo=remi
对于RHEL 7,启用以下存储库:
sudo subscription-manager repos --enable=rhel-7-server-optional-rpms
2、在Ubuntu上:
sudo apt-get install redis-server
安装后启动并启用redis服务:
sudo systemctl enable --now redis
由于所有内容都在同一台服务器上运行,因此请将Redis配置为侦听127.0.0.1和服务器专用IP地址:
sudo vim /etc/redis.conf
将绑定地址设置为:
bind 127.0.0.1 ::1 10.10.1.15
进行更改后重新启动服务:
sudo systemctl restart redis
确认已启动redis服务:
$ systemctl status redis
$ ss -tunelp | grep 6379
四、生成Red Hat Quay配置
在将Red Hat Quay服务作为容器运行之前,你需要使用相同的容器来创建部署Red Hat Quay所需的配置文件(config.yaml),UI管理员密码作为配置参数传递给Quay容器:
$ sudo docker run -p 443:8443 quay.io/redhat/quay:v3.0.3 config Heer4giivoeCoh4
用最新的image tag替换3.0.3,用管理员密码替换Heer4giivoeCoh4,启动容器后,访问Quay仪表板https://:443:
登录信息是:
Username: quayconfig
Password: Heer4giivoeCoh4
在下一个屏幕上选择新的注册表设置:
输入要创建的架构的数据库连接设置:
创建用于管理Red Hat Quay的超级用户帐户:
还提供redis连接信息:
设置服务器主机名以及是否启用TLS/SSL:
相应地设置注册表存储:
验证Quay Registry设置并保存:
下载将用于引导Quay注册表服务器的配置:
五、部署Red Hat Quay Registry
你将配置文件下载到本地计算机,并将其上载到Quay将运行的服务器:
scp quay-config.tar.gz user@serverip:
你将使用用于创建配置文件的相同容器在集群中的节点上部署Red Hat Quay服务,由于这是一个基本设置,我们在单个节点上进行设置,为获得高可用性,可能需要三个或更多节点(例如,quay01、quay02和quay03)。
创建数据和配置目录:
mkdir -p /data/quay/config
mkdir -p /data/quay/storage
复制配置文件并解压缩:
cp quay-config.tar.gz /data/quay/config/
cd /data/quay/config/
tar xvf quay-config.tar.gz
最后,启动Quay容器:
docker run --restart=always -p 443:8443 -p 80:8080 \
--sysctl net.core.somaxconn=4096 \
-v /data/quay/config:/conf/stack:Z \
-v /data/quay/storage:/datastorage:Z \
-d quay.io/redhat/quay:v3.0.3
允许防火墙中的http和https端口:
sudo firewall-cmd --permanent --zone=trusted --add-port=80/tcp
sudo firewall-cmd --permanent --zone=trusted --add-port=443/tcp
sudo firewall-cmd --reload
你现在可以在配置的DNS名称上通过https协议访问Red Hat Quay Registry仪表板:
至此,整个Red Hat Quay安装配置完成。
相关主题