koji是fedora/centos/rhel/openanolisos/opencloudos使用的rpm包自动化构建与追踪系统koji build system用来集中、批量、可复现地编译RPM软件包并管理软件仓库。如何快速高效部署搭建kojihubweb服务共分为六个部分组成1、postgresql存储用户、任务、构建记录2、koji-hub​核心服务端XML-RPC接口连postgresql3、koji-webWeb UI通过Apache/httpd展示4、koji-builder编译节点用 mock 在 chroot 里编 RPM5、kojira (koji-utils)​负责生成 yum 仓库元数据6、/mnt/koji (NFS 或本地)​存放 SRPM、RPM、repo 数据。本文将讲解第二、三部分kojihubweb搭建部署。目录一、部署准备1、准备基础镜像2、准备数据库3、准备必备文件4、准备配置文件二、手搓证书1、手搓CA 根证书2、手搓kojihub组件证书三、制作镜像四、创建容器五、访问验证1、域名加入本地hosts解析2、浏览器访问注一、部署准备1、准备基础镜像参考地址《如何制作一个docker base镜像》2、准备数据库参考地址《便捷快速部署koji服务postgresql数据库篇》3、准备必备文件git clone https://gitee.com/koji_docker/kojihub.git4、准备配置文件mkdir -p ~/.koji/conf cp hub.conf ssl.conf web.conf kojihub.conf ~/.koji/conf/二、手搓证书注可购买证书不执行本步骤1、手搓CA 根证书bash create_ca.sh2、手搓kojihub组件证书bash koji_make_cert.sh koji.delcare.cn三、制作镜像docker build -f Dockerfile -t cr.delcare.cn/koji:1.31.1 .四、创建容器docker run -itd --name kojihub --hostname kojihub \ -v $HOME/koji:/mnt/koji \ -v $HOME/.koji/conf/hub.conf:/etc/koji-hub/hub.conf:ro \ -v $HOME/.koji/conf/ssl.conf:/etc/httpd/conf.d/ssl.conf:ro \ -v $HOME/.koji/conf/web.conf:/etc/kojiweb/web.conf:ro \ -v $HOME/.koji/conf/kojihub.conf:/etc/httpd/conf.d/kojihub.conf:ro \ -v $HOME/.koji/certs/koji.delcare.cn.crt:/etc/pki/koji/certs/kojihub.crt:ro \ -v $HOME/.koji/private/koji.delcare.cn.key:/etc/pki/koji/private/kojihub.key:ro \ -v $HOME/.koji/certs/koji_ca_cert.crt:/etc/pki/koji/certs/koji_ca_cert.crt:ro \ -p 80:80 -p 443:443 cr.delcare.cn/koji:1.31.1注手搓证书需将证书加入可信重启生效cp /etc/pki/koji/certs/kojihub.crt /etc/pki/koji/certs/koji_ca_cert.crt /etc/pki/ca-trust/source/anchors/ update-ca-trust五、访问验证1、域名加入本地hosts解析注公网服务器可通过配置DNS解析不执行本步骤sudo echo 127.0.0.1 koji.delcare.cn /etc/hosts2、浏览器访问https://koji.delcare.cn/koji/注至此kojihubweb部分已配置完毕其他部分将后续分别进行介绍。