
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Pritunl is the best open source alternative to proprietary commercial *** products such as Aviatrix and Pulse Secure. Create larger cloud *** networks supporting thousands of concurrent users and get more control over your *** server without any per-user pricing.
All images are published to the following registries
ghcr.io/jippi/docker-pritunl ⬅️ Recommendedpublic.ecr.aws/jippi/pritunl ⬅️ Great alternativejippi/docker-pritunl ⬅️ Only use :latest as tags might disappearImage tags with software specifications and version information can be found in the table below
| Tag | Version | OS (Ubuntu) | MongoDB | ******* |
|---|---|---|---|---|
latest | https://github.com/pritunl/pritunl/releases/latest | Jammy (22.04) | ✅ (6.x) | ✅ |
latest-minimal | https://github.com/pritunl/pritunl/releases/latest | Jammy (22.04) | ❌ | ✅ |
latest-focal | https://github.com/pritunl/pritunl/releases/latest | Focal (20.04) | ✅ (5.x) | ✅ |
latest-focal-minimal | https://github.com/pritunl/pritunl/releases/latest | Focal (20.04) | ❌ | ✅ |
$version | $version | Jammy (22.04) | ✅ (6.x) | ✅ |
$version-minimal | $version | Jammy (22.04) | ❌ | ✅ |
$version-focal | $version | Focal (20.04) | ✅ (5.x) | ✅ |
$version-focal-minimal | $version | Focal (20.04) | ❌ | ✅ |
† Automation checks for new Pritunl releases nightly (CEST, ~3am), so there might be a day or two latency for most recent release
Run the following command to obtain the default login username and password:
shdocker exec -it [container_name] pritunl default-password
Ex:
shdocker exec -it pritunl pritunl default-password
Configuration settings that can be used via --env / -e CLI flag in docker run.
PRITUNL_DONT_WRITE_CONFIG if set, /etc/pritunl.conf will not be auto-written on container start. Any value will stop modifying the configuration file.PRITUNL_DEBUG must be true or false - controls the debug config key.PRITUNL_BIND_ADDR must be a valid IP on the host - defaults to 0.0.0.0 - controls the bind_addr config key.PRITUNL_MONGODB_URI URI to mongodb instance, default is starting a local MongoDB instance inside the container. Any value will stop this behavior.I would recommend using a Docker volume or bind mount for persistent data like shown in the examples below
shdata_dir=$(pwd)/data mkdir -p $(data_dir)/pritunl $(data_dir)/mongodb touch $(data_dir)/pritunl.conf docker run \ --name pritunl \ --privileged \ --network=host \ --dns 127.0.0.1 \ --restart=unless-stopped \ --detach \ --volume $(data_dir)/pritunl.conf:/etc/pritunl.conf \ --volume $(data_dir)/pritunl:/var/lib/pritunl \ --volume $(data_dir)/mongodb:/var/lib/mongodb \ ghcr.io/jippi/docker-pritunl
shdata_dir=$(pwd)/data mkdir -p $(data_dir)/pritunl $(data_dir)/mongodb touch $(data_dir)/pritunl.conf
and then the following docker-compose.yaml file in $(pwd) followed by docker-compose up -d
yamlversion: '3.3' services: pritunl: container_name: pritunl image: ghcr.io/jippi/docker-pritunl restart: unless-stopped privileged: true network_mode: host dns: - 127.0.0.1 volumes: - './data/pritunl.conf:/etc/pritunl.conf' - './data/pritunl:/var/lib/pritunl' - './data/mongodb:/var/lib/mongodb'
I would recommend using a Docker volume or bind mount for persistent data like shown in the examples below
If you have MongoDB running somewhere else you'd like to use, you can do so through the PRITUNL_MONGODB_URI env var like shown below
shdata_dir=$(pwd)/data mkdir -p $(data_dir)/pritunl touch $(data_dir)/pritunl.conf docker run \ --name pritunl \ --privileged \ --network=host \ --dns 127.0.0.1 \ --restart=unless-stopped \ --detach \ --volume $(data_dir)/pritunl.conf:/etc/pritunl.conf \ --volume $(data_dir)/pritunl:/var/lib/pritunl \ --env PRITUNL_MONGODB_URI=mongodb://some-mongo-host:27017/pritunl \ ghcr.io/jippi/docker-pritunl
shdata_dir=$(pwd)/data mkdir -p $(data_dir)/pritunl touch $(data_dir)/pritunl.conf
and then the following docker-compose.yaml file in $(pwd) followed by docker-compose up -d
yamlversion: '3.3' services: pritunl: container_name: pritunl image: ghcr.io/jippi/docker-pritunl restart: unless-stopped privileged: true network_mode: host dns: - 127.0.0.1 environment: - PRITUNL_MONGODB_URI=mongodb://some-mongo-host:27017/pritunl volumes: - './data/pritunl.conf:/etc/pritunl.conf' - './data/pritunl:/var/lib/pritunl'
If you don't want to use network=host, then replace the --network=host CLI flag with the following ports + any ports you need for your configured Pritunl servers.
sh--publish 80:80 \ --publish 443:443 \ --publish 1194:1194 \ --publish 1194:1194/udp \
or for docker-compose
yamlports: - '80:80' - '443:443' - '1194:1194' - '1194:1194/udp'
IMPORTANT: Stop your pritunl docker container (docker stop pritunl) before doing these steps
The pattern for upgrading are basically the same, with the only variance being the MongoDB version number, the docs can be found here:
Bionic (18.04)Focal (20.04)I've made a small script called https://github.com/jippi/docker-pritunl/blob/master/mongo-upgrade.sh that you can download to your server and run. It will make an best-effort to guide you through the steps needed to upgrade.
sh# fetch the script wget -O mongo-upgrade.sh https://raw.githubusercontent.com/jippi/docker-pritunl/master/mongo-upgrade.sh # make it executable chmod +x mongo-upgrade.sh # edit settings vi mongo-upgrade.sh # run ./mongo-upgrade.sh
Assuming you are coming from 3.2, your next version is 3.6 so you need to set $NEXT_VERSION_TO_UPGRADE_TO=3.6 and run these commands.
You can see the list of versions you would need to run with the script above.
Example path from 3.2 to 4.4 would mean running the script once per NEXT_VERSION_TO_UPGRADE_TO with the values below
NEXT_VERSION_TO_UPGRADE_TO=3.2NEXT_VERSION_TO_UPGRADE_TO=3.6NEXT_VERSION_TO_UPGRADE_TO=4.0NEXT_VERSION_TO_UPGRADE_TO=4.2NEXT_VERSION_TO_UPGRADE_TO=4.4shNEXT_VERSION_TO_UPGRADE_TO= MONGODB_DATA_PATH=$PATH_TO_YOUR_MONGODB_DB_FOLDER # must point to the directory where files like `mongod.lock` and `journal/` are on disk. # Start MongoDB server docker run -d --name temp-mongo-server --rm -it -v ${MONGODB_DATA_PATH}:/data/db mongo:${NEXT_VERSION_TO_UPGRADE_TO} # Wait for server to start sleep 5 # change setFeatureCompatibilityVersion to current version docker exec temp-mongo-server mongo admin --quiet --eval "db.adminCommand( { setFeatureCompatibilityVersion: \"${NEXT_VERSION_TO_UPGRADE_TO}\" } );" # stop the server gracefully docker exec -it temp-mongo-server mongo admin --quiet --eval "db.shutdownServer()" # Wait for the server to stop sleep 5 # make sure container is stopped docker stop temp-mongo-server # remove container docker rm -f temp-mongo-server # repair / upgrade data docker run --rm --volume ${MONGODB_DATA_PATH}:/data/db mongo:${NEXT_VERSION_TO_UPGRADE_TO} --repair
For any help specific to Pritunl please have a look at <[***]> and https://github.com/pritunl/pritunl
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务