
urpylka/aptly本镜像整合aptly和nginx,提供一站式Debian/Ubuntu软件仓库解决方案。aptly负责软件包仓库的创建、管理、签名和维护,nginx提供HTTP服务以允许客户端通过网络访问仓库资源,适用于企业内部软件分发、自定义包管理等场景。
bashdocker run -d \ --name debian-repo \ -p 80:80 \ -v /path/to/aptly/data:/var/lib/aptly \ -v /path/to/aptly/config:/etc/aptly \ -v /path/to/nginx/conf:/etc/nginx/conf.d \ urpylka/docker-aptly
yamlversion: '3' services: debian-repo: image: urpylka/docker-aptly container_name: debian-repo ports: - "80:80" volumes: - ./aptly-data:/var/lib/aptly # 持久化aptly数据(仓库包、元数据等) - ./aptly-config:/etc/aptly # aptly配置文件 - ./nginx-conf:/etc/nginx/conf.d # nginx自定义配置 restart: always
/var/lib/aptly:aptly数据目录,包含仓库包、元数据等,需持久化挂载以保留仓库数据/etc/aptly:aptly配置目录,可自定义aptly.conf配置文件/etc/nginx/conf.d:nginx配置目录,可自定义仓库访问的Nginx配置(如端口、域名、SSL等)进入容器后可使用aptly命令管理仓库:
bash# 进入容器 docker exec -it debian-repo bash # 创建新仓库 aptly repo create -distribution=bullseye -component=main my-debian-repo # 添加deb包到仓库 aptly repo add my-debian-repo /path/to/package.deb # 发布仓库(生成元数据,供nginx访问) aptly publish repo -architectures=amd64 my-debian-repo
仓库发布后,客户端可通过以下方式添加仓库:
/etc/apt/sources.list中添加:deb http://<your-server-ip>/aptly/public/ bullseye main
bashapt update
更多详情及源码请访问:GitHub
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务