
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Star Citizen Wiki API是star-citizen.wiki的应用程序接口,主要用于自动抓取Comm-Links(通讯链接)、统计数据和Ship-Matrix(飞船矩阵)等内容。
使用Docker和docker-compose进行安装。
拉取scwiki/api镜像或构建本地镜像:
shell$ ./docker-build.sh
shell$ mkdir -p ./var/lib/api.star-citizen.wiki/storage $ mkdir -p ./var/lib/api.star-citizen.wiki/logs $ mkdir -p ./var/lib/api.star-citizen.wiki/db $ touch ./var/lib/api.star-citizen.wiki/db/db.sqlite $ mkdir -p ./etc/api.star-citizen.wiki # 33:33是Docker中www-data用户的用户ID和组ID $ chown -R 33:33 ./var/lib/api.star-citizen.wiki $ chmod -R g+s ./var/lib/api.star-citizen.wiki $ chown -R 33:33 ./etc/api.star-citizen.wiki
将以下内容粘贴到./etc/api.star-citizen.wiki/env-production:
envAPP_URL=http://localhost APP_ENV=local APP_DEBUG=false APP_KEY= LOG_LEVEL=info # 通过队列容器运行任务 QUEUE_DRIVER=database # 设置为true可跳过MediaWiki OAuth,始终以管理员账户登录 # 生产环境请勿使用 ADMIN_AUTH_USE_STUB=true # SQLITE配置 DB_CONNECTION=sqlite DB_DATABASE=db.sqlite # MYSQL配置(如需使用MySQL请取消注释并修改) # DB_HOST=db # DB_DATABASE=CHANGE_ME # DB_USERNAME=CHANGE_ME # DB_PASSWORD=CHANGE_ME MAIL_DRIVER=smtp # 或 log MAIL_HOST= MAIL_FROM_ADDRESS= MAIL_FROM_NAME= MAIL_USERNAME= MAIL_PASSWORD= # 每秒最多10,000次请求 THROTTLE_GUEST_REQUESTS=10000 THROTTLE_PERIOD=1 #WIKI_URL=https://star-citizen.wiki #WIKI_API_URL=https://star-citizen.wiki/api.php # 访问MediaWiki API的机器人凭证 WIKI_OAUTH_ID= WIKI_OAUTH_SECRET= # 用于在wiki上创建自动Comm-Link页面 # 需要安装OAuth扩展和激活的应用 WIKI_TRANS_OAUTH_CONSUMER_TOKEN= WIKI_TRANS_OAUTH_CONSUMER_SECRET= WIKI_TRANS_OAUTH_ACCESS_TOKEN= WIKI_TRANS_OAUTH_ACCESS_SECRET= # wiki通讯链接页面使用的翻译文本,默认de_DE WIKI_TRANS_LOCALE= # 用于自动Comm-Link翻译的DEEPL访问密钥 DEEPL_AUTH_KEY= # DEEPL翻译的目标语言,默认:DE DEEPL_TARGET_LOCALE= # RSI用户账户(由于验证码问题,当前登录功能已损坏) RSI_USERNAME= RSI_PASSWORD=
yamlversion: '3' services: api.star-citizen.wiki: image: scwiki/api:dev container_name: api.star-citizen.wiki restart: unless-stopped security_opt: - no-new-privileges:true ports: - 127.0.0.1:8000:80 environment: CONTAINER_ROLE: app volumes: - ./var/lib/api.star-citizen.wiki/storage:/var/www/html/storage/app - ./var/lib/api.star-citizen.wiki/logs:/var/www/html/storage/logs - ./var/lib/api.star-citizen.wiki/db/db.sqlite:/var/www/html/database/db.sqlite - ./etc/api.star-citizen.wiki/env-production:/var/www/html/.env - /etc/localtime:/etc/localtime:ro scheduler: image: scwiki/api:dev restart: unless-stopped security_opt: - no-new-privileges:true depends_on: - api.star-citizen.wiki volumes: - ./var/lib/api.star-citizen.wiki/storage:/var/www/html/storage/app - ./var/lib/api.star-citizen.wiki/logs:/var/www/html/storage/logs - ./var/lib/api.star-citizen.wiki/db/db.sqlite:/var/www/html/database/db.sqlite - ./etc/api.star-citizen.wiki/env-production:/var/www/html/.env - /etc/localtime:/etc/localtime:ro environment: CONTAINER_ROLE: scheduler queue: image: scwiki/api:dev restart: unless-stopped security_opt: - no-new-privileges:true depends_on: - api.star-citizen.wiki volumes: - ./var/lib/api.star-citizen.wiki/storage:/var/www/html/storage/app - ./var/lib/api.star-citizen.wiki/logs:/var/www/html/storage/logs - ./var/lib/api.star-citizen.wiki/db/db.sqlite:/var/www/html/database/db.sqlite - ./etc/api.star-citizen.wiki/env-production:/var/www/html/.env - /etc/localtime:/etc/localtime:ro environment: CONTAINER_ROLE: queue
shelldocker-compose up -d
登录容器并运行设置脚本:
shell$ docker exec -it api.star-citizen.wiki /bin/bash # 在容器内执行 $ php artisan key:generate $ php artisan migrate # 确认执行 $ php artisan db:seed # 确认执行
用户通过wiki的OAuth进行授权。需安装Extension:OAuth扩展并激活。
在wiki上注册OAuth应用,并在生产环境文件中设置消费者和访问令牌。wiki中属于管理员组的用户将拥有API的管理员访问权限。
或者,可在环境文件中设置ADMIN_AUTH_USE_STUB=true以禁用OAuth授权。注意:这将完全跳过授权检查,所有用户都将以管理员账户登录。
API提供多个可在容器内通过php artisan COMMAND调用的命令。
所有可用命令可通过php artisan列出,特定命令的帮助可通过php artisan help COMMAND获取。
导入缺失的Comm-Links
在容器内执行:
shellphp artisan comm-links:schedule
该命令将下载所有Comm-Links,解析并创建元数据。可通过Ctrl+C安全停止导入。
Comm-Links可通过API_URL/api/comm-links访问。
导入已下载的Comm-Links
通过php artisan comm-links:import-all可导入已下载的Comm-Links。该命令将为storage/app/comm_links中找到的每个已下载Comm-Link分派解析任务。
下载特定Comm-Links
命令:php artisan comm-links:download ID1 ID2 ID3 ...。
传递--import标志将在下载后导入Comm-Links;传递--overwrite将强制导入,即使本地已存在Comm-Link文件。
下载Comm-Link图片
命令:php artisan comm-links:download-images。
该命令下载所有已解析的Comm-Link图片,并保存到storage/app/public/comm_link_images。任务分派到comm_link_images队列,需在容器内手动调用:php artisan queue:work --queue=comm_link_images。
创建Comm-Link图片元数据
命令:php artisan comm-links:images-create-metadata。
为每张图片请求以下元数据:size(大小)、mime_type(MIME类型)、last_modified(最后修改时间)。
创建Comm-Link图片哈希
命令:php artisan comm-links:images-create-hashes。
创建用于反向图片搜索的图片哈希,需先存在元数据。
下载与导入
shellphp artisan ship-matrix:download --import
飞船数据可通过API_URL/api/ships访问。
下载与导入
shellphp artisan stats:download --import
导入预下载的统计数据
API包含2012-11-13至2018-03-25的统计数据 dump。通过php artisan db:seed --class StatTableSeeder可导入这些dump。
统计数据可通过API_URL/api/stats访问。
docker-compose中指定的调度容器将运行以下命令:
该API与德语Star Citizen Wiki深度集成,目前除api.star-citizen.wiki外,尚无其他已知安装实例。
在star-citizen.wiki注册账户即可获得基本API访问权限,每个用户将获得一个几乎无速率限制的API令牌。
如有任何问题,请在该仓库提交issue或联系***。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

来自真实用户的反馈,见证轩辕镜像的优质服务