
karcaw/nginx-createrepo该镜像基于Nginx构建,集成了createrepo工具,旨在提供一个简单高效的YUM软件仓库托管解决方案。通过将Nginx的HTTP服务能力与createrepo的仓库元数据生成功能结合,用户可快速搭建本地或内部网络YUM源,实现软件包的集中管理与分发。
bash# 启动容器,映射80端口并挂载本地RPM目录 docker run -d \ --name yum-repo-server \ -p 80:80 \ -v /path/to/local/rpms:/usr/share/nginx/html/yumrepo \ nginx-createrepo:latest
容器启动后,需执行createrepo命令生成仓库元数据:
bash# 进入容器 docker exec -it yum-repo-server /bin/bash # 在容器内生成元数据 createrepo /usr/share/nginx/html/yumrepo # 如需更新仓库(添加新RPM后),执行: createrepo --update /usr/share/nginx/html/yumrepo
在需要使用该YUM源的客户端服务器上,创建repo文件:
bash# 创建repo配置文件 vi /etc/yum.repos.d/local-yum.repo
添加以下内容:
ini[local-yum-repo] name=Local YUM Repository baseurl=http://<容器IP或主机名>/yumrepo enabled=1 gpgcheck=0 # 若有GPG密钥可设为1并配置gpgkey
如需修改Nginx配置(如更改端口、添加认证等),可挂载自定义配置文件:
bashdocker run -d \ --name yum-repo-server \ -p 8080:8080 \ # 自定义端口 -v /path/to/local/rpms:/usr/share/nginx/html/yumrepo \ -v /path/to/custom/nginx.conf:/etc/nginx/nginx.conf \ nginx-createrepo:latest
创建docker-compose.yml文件:
yamlversion: '3' services: yum-repo: image: nginx-createrepo:latest container_name: yum-repo-server ports: - "80:80" volumes: - /path/to/local/rpms:/usr/share/nginx/html/yumrepo # 可选:挂载自定义Nginx配置 # - ./nginx.conf:/etc/nginx/nginx.conf restart: unless-stopped
启动服务:
bashdocker-compose up -d
createrepo --update更新元数据manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务