
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Sync your Proton Mail contacts with any CardDAV server — Nextcloud, Radicale, Baïkal, iCloud, and others. A small, self-hosted Go daemon.
📦 Source & full docs: https://github.com/secbyd/proton-carddav-sync
PCS_ENCRYPTION_KEY. Nothing secret is written to the config file.latest — the current main buildvX.Y.Z — tagged releasessha-<short> — a specific commitImages are multi-arch: linux/amd64 and linux/arm64.
| Mount | Purpose |
|---|---|
/config | holds config.yaml (set database.path: /data/sync.db) |
/data | holds the SQLite database (credentials + sync state) |
PCS_ENCRYPTION_KEY (a long random passphrase) must be passed at runtime — it is
never baked into the image, and the same value is required by init and the
daemon.
The container runs as a non-root user (uid ***). Named volumes (as below) work out of the box. If you ***d-mount host directories owned by another user, run the container as that user —
--user $(id -u):$(id -g)(oruser: "1000:1000"in compose), applied to theinitrun too — orchown -R 10001:10001the host directories.
bashdocker run --rm -it \ -e PCS_ENCRYPTION_KEY="a-long-random-passphrase" \ -v pcs-config:/config -v pcs-data:/data \ secbyd/proton-carddav-sync \ init --config /config/config.yaml
With no config present, init asks for every setting (set database.path to
/data/sync.db), logs in to Proton (asking for a TOTP code if 2FA is enabled),
and stores the encrypted session.
If your platform can't run an interactive one-off container (e.g. Portainer or
Unraid), start the container with the idle command instead, then:
bashdocker exec -it <container> proton-carddav-sync init --config /config/config.yaml
…and restart it with the default command afterwards.
bashdocker run -d --name proton-carddav-sync --restart unless-stopped \ -e PCS_ENCRYPTION_KEY="a-long-random-passphrase" \ -v pcs-config:/config -v pcs-data:/data \ secbyd/proton-carddav-sync
yamlservices: proton-carddav-sync: image: secbyd/proton-carddav-sync:latest restart: unless-stopped environment: PCS_ENCRYPTION_KEY: "a-long-random-passphrase" volumes: - pcs-config:/config - pcs-data:/data volumes: pcs-config: pcs-data:
Run init once before up -d:
docker compose run --rm -it proton-carddav-sync init --config /config/config.yaml
| Variable | Required | Description |
|---|---|---|
PCS_ENCRYPTION_KEY | yes | Master key encrypting the stored Proton session + CardDAV password |
PCS_PROTON_APP_VERSION | no | Override the Proton x-pm-appversion header |
PCS_PROTON_USER_AGENT | no | Override the browser User-Agent sent to Proton |
debian:bookworm-slim base so the CGO SQLite driver works
without musl/static-link complications.See the https://github.com/secbyd/proton-carddav-sync for license and full documentation.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务