本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com

该Web应用主要实现以下功能:
mpstats端口的用户应用旨在为用户提供一站式端口查找平台,同时帮助维护者监控其端口并了解用户群体。生产环境实例运行于ports.macports.org。
更多信息参见docs/1-INFORMATION.md
Web应用基于Django框架开发,使用PostgreSQL数据库。
应用推荐部署在Docker容器中,通过nginx和uWSGI提供服务。
该应用是在Google Summer of Code 2019期间由MacPorts组织指导开发:
学生:Arjun Salyan
导师:Mojca Miklavec、Umesh Singla
mpstats端口的用户的系统配置和安装端口数据Docker镜像已预配置自动运行migrations和collectstatic命令,需手动执行初始数据填充和定时任务启动。
可直接拉取镜像或本地构建:
# 拉取镜像 docker pull arjunsalyan/macports-webapp # 或本地构建 docker build -t macports-webapp .
在项目根目录创建env文件,配置以下环境变量(参考项目根目录的env.sample文件):
DB_NAME=数据库名称 DB_USER=数据库用户名 DB_PASSWORD=数据库密码 DB_HOST=数据库主机地址(连接主机数据库时使用host.docker.internal代替localhost) DB_PORT=数据库端口(默认:5432) SECRET_KEY=Django应用密钥
docker run -d -p 80:80 --env-file=env --name=macports-webapp macports-webapp
访问127.0.0.1:80验证启动状态(首次加载可能需10-15秒,后台执行迁移和静态文件收集)。
仅在空数据库上执行,从rsync服务器获取最新PortIndex.json并填充数据库:
docker exec macports-webapp python3 /code/app/manage.py autoload-initial-data
注:该过程耗时较长(通常30分钟内,取决于数据库与应用的连接速度)。
数据填充完成后启动定时任务:
docker exec macports-webapp supervisorctl start cron
启动后将自动执行以下任务:
python3 manage.py fetch-build-historypython3 manage.py update-portinfo应用支持的其他命令通过以下方式执行:
docker exec macports-webapp [命令]
/app目录为独立Django应用,可按标准Django应用方式运行。
推荐通过环境变量配置数据库连接(避免直接修改配置文件),需设置以下环境变量:
DB_NAME=数据库名称 DB_USER=数据库用户名 DB_PASSWORD=数据库密码 DB_HOST=数据库主机地址 SECRET_KEY=Django应用密钥
不推荐方式:直接修改app/MacPorts/settings.py文件配置数据库凭据。
# 创建迁移文件 python3 manage.py makemigrations # 执行迁移 python3 manage.py migrate
portindex.json文件(通过portindex2json.tcl生成)python3 manage.py load <文件名> # 不指定文件名则使用默认portindex.json
python3 manage.py fetch-build-history
# 收集静态文件 python3 manage.py collectstatic # 启动开发服务器 python3 manage.py runserver
将新的JSON文件放置在项目根目录,执行更新命令:
python3 manage.py update <文件名> # 不指定文件名则使用默认portindex.json
支持基于提供的JSON文件特性进行差异更新或全量更新。
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录方式配置轩辕镜像加速服务,包含7个详细步骤
在 Linux 系统上配置轩辕镜像源,支持主流发行版
在 Docker Desktop 中配置轩辕镜像加速,适用于桌面系统
在 Docker Compose 中使用轩辕镜像加速,支持容器编排
在 k8s 中配置 containerd 使用轩辕镜像加速
在宝塔面板中配置轩辕镜像加速,提升服务器管理效率
在 Synology 群晖NAS系统中配置轩辕镜像加速
在飞牛fnOS系统中配置轩辕镜像加速
在极空间NAS中配置轩辕镜像加速
在爱快ikuai系统中配置轩辕镜像加速
在绿联NAS系统中配置轩辕镜像加速
在威联通NAS系统中配置轩辕镜像加速
在 Podman 中配置轩辕镜像加速,支持多系统
配置轩辕镜像加速9大主流镜像仓库,包含详细配置步骤
无需登录即可使用轩辕镜像加速服务,更加便捷高效
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429