- 安裝 PostgreSQL 服務:
# yum install -y postgresql-*
# postgresql-setup initdb
# vim /var/lib/pgsql/data/pg_hba.conf
host all all 0.0.0.0/0 md5
host all all ::1/128 md5
# vim /var/lib/pgsql/data/postgresql.conf
listen_addresses = '*';
# systemctl enable --now postgresql
- 新增 PostgreSQL 內的資料庫給 Quay 使用:
# su - postgres
$ psql
postgres=# \password postgres
postgres=# CREATE USER quay WITH PASSWORD 'quay123';
postgres=# CREATE DATABASE quay;
postgres=# ALTER DATABASE quay OWNER TO quay;
postgres=# GRANT ALL PRIVILEGES ON DATABASE quay TO quay;
postgres=# \connect quay;
quay=# ALTER SHCEMA public OWNER TO quay;
quay=# GRANT ALL PRIVILEGES ON SCHEMA public TO quay;
quay=# CREATE EXTENSION IF NOT EXISTS pg_trgm;
quay=# \q
$ exit
#
- 測試連結 PostgreSQL Server:
# psql -U quay -d quay -h 127.0.0.1
quay=> \q
#
- 安裝 Redis 服務:
# yum install -y redis-*
# vim /etc/redis/redis.conf
requirepass quay
bind * -::1
# systemctl enable --now redis
- 設定防火牆:
# firewall-cmd --add-service=http
# firewall-cmd --add-service=https
# firewall-cmd --add-service=postgresql
# firewall-cmd --add-service=redis
# firewall-cmd --runtime-to-permanent
- 安裝 Podman 容器服務:
# yum install -y podman container-tools
- 登入 Registry Server:
# podman login registry.redhat.io
- 安裝 Quay 服務,並且進行初始化設定:
# podman run --rm -it --name quay_config -p 80:8080 -p 443:8443 registry.redhat.io/quay/quay-rhel8:v3.7.10 config secret
- 打開瀏覽器,輸入網址:http://localhost
- 在畫面中,輸入帳號密碼:quayconfig / secret
- 設定首頁的 Title 名稱:
- 設定 Quay 主機名稱:
- 設定連結 PostgreSQL 相關資料:
- 設定連結 Redis 相關資料:
- 按下 Validate Configuration Changes 用來驗證資料是否正確:
- 驗證成功之後,下載設定檔,並且停止 quay_config 容器的運作:
# podman stop quay_config
- 將下載的設定檔,解開至指定的資料夾內:
# mkdir -p /opt/quay/config
# cp ~/Downloads/quay-config.tar.gz /opt/quay/config
# cd /opt/quay/config
# tar xvf quay-config.tar.gz
- 建立一個資料夾,用來存放容器印象檔:
# mkdir -p /opt/quay/storage
# setfacl -m u:1001:-wx /opt/quay/storage
- 佈署一個新的 Quay 服務:
# podman run -d --rm -p 80:8080 -p 443:8443 \
--name=quay \
-v /opt/quay/config:/conf/stack:Z \
-v /opt/quay/storage:/datastorage:Z \
registry.redhat.io/quay/quay-rhel8:v3.7.10
- 打開瀏覽器,輸入網址名稱,例如:http://registry.example.com
- 下拉網頁至下方,點選「Creaet Account」建立一個管理者帳號:
- 登入後,即可開始使用:
- 為 Quay 建立一個系統服務,設定開機時可立即啟動:
# podman stop quay
# podman create -p 80:8080 -p 443:8443 \
--name=quay \
-v /opt/quay/config:/conf/stack:Z \
-v /opt/quay/storage:/datastorage:Z \
registry.redhat.io/quay/quay-rhel8:v3.7.10
# podman images
# podman generate systemd --new --files --name quay
# cp -Z container-quay.service /etc/systemd/system
# systemctl daemon-reload
# systemctl enable --now container-quay.service
- 可修改相關設定,讓 QUAY 更安全:
# vim /opt/quay/config/config.yaml
FEATURE_ANONYMOUS_ACCESS: false
SETUP_COMPLETE: true
SUPER_USERS:
- admin
FEATURE_USER_CREATION: false
# systemctl restart container-quay.service
# restorecon -Rvv /opt/quay/