本站支持搜索的镜像仓库:Docker Hub、gcr.io、ghcr.io、quay.io、k8s.gcr.io、registry.gcr.io、elastic.co、mcr.microsoft.com
pretalx-docker 是一个基于 Docker 的 pretalx 部署方案,包含 docker-compose 配置文件及 Ansible 角色,用于简化 pretalx 会议管理系统的部署流程。pretalx 是一款开源会议管理软件,支持会议议程规划、演讲者管理、参会者注册等功能。
注意:本仓库由 pretalx 社区提供,非 pretalx 官方团队支持。
启动容器集群:
docker-compose up -d
等待几分钟,服务将在 http://localhost/orga 可访问
初始化管理员用户及组织:
docker exec -ti pretalx pretalx init
conf/pretalx.conf,根据 pretalx 配置文档 填写自定义参数docker-compose.yml:
ports: - "80:80" 配置段(若使用 Traefik 反向代理)ports: - "127.0.0.1:8355:80"(若使用 Nginx 反向代理)environment 中的数据库密码(POSTGRES_PASSWORD)/data/pretalx/redis、/data/pretalx/db、/data/pretalx/data)chown -R 999:999 /data/pretalx/* chmod -R 755 /data/pretalx/*
docker-compose.yml 中 volumes 配置,将 pretalx-redis、pretalx-db、pretalx-data 替换为自定义目录路径pretalx 容器在 pretalxdocker 网络中监听 80 端口,需通过反向代理处理 TLS 加密。
推荐方案:Traefik
reverse-proxy-examples/docker-compose 中的示例配置,将 Traefik 服务添加到 docker-compose.yml备选方案:Nginx
reverse-proxy-examples/nginx 中的配置示例,配置 Nginx 反向代理proxy_pass 指向容器端口(如 [***])启动容器集群:
docker-compose up -d
等待服务初始化完成(约 3-5 分钟),通过 [***] 访问
初始化管理员用户及组织:
docker exec -ti pretalx pretalx init
将 ansible-role 目录添加到 Ansible 角色路径(如 /etc/ansible/roles)
创建 Ansible 剧本(示例):
- hosts: test-server roles: - pretalx-docker
执行部署:
ansible-playbook -i inventory test-playbook.yml
服务将在 http://localhost/orga 可访问,初始化用户及组织:
docker exec -ti pretalx pretalx init
将 ansible-role 目录添加到 Ansible 角色路径
编辑角色变量文件(vars/main.yml),设置必要参数:
pretalx_testing: false # 必须设置为 false pretalx_domain: "conf.example.com" # 生产环境域名 pretalx_db_password: "StrongPassword123!" # 数据库密码 pretalx_secret_key: "your-secure-secret-key" # 应用加密密钥 # 其他参数参考 vars/main.yml 注释说明
推荐使用 Traefik 作为反向代理,容器已默认添加 Traefik 标签。可参考 reverse-proxy-examples/ansible/traefik 中的 Ansible 角色配置 Traefik 服务。
执行 Ansible 部署:
ansible-playbook -i inventory production-playbook.yml
等待部署完成(约 5-10 分钟),通过配置的域名访问(如 [***])
初始化管理员用户及组织:
docker exec -ti pretalx pretalx init
| 文件路径 | 说明 | 关键配置项示例 |
|---|---|---|
conf/pretalx.conf | pretalx 应用配置文件 | SITE_URL=[***] |
docker-compose.yml | Docker 服务编排配置 | POSTGRES_PASSWORD=StrongPassword123! |
ansible-role/vars/main.yml | Ansible 角色变量配置 | pretalx_testing: false |
| 容器数据路径 | 用途 | Docker Volume 名称 | 自定义目录权限要求 |
|---|---|---|---|
/data | pretalx 应用数据 | pretalx-data | UID/GID 999,读写权限 (0755) |
/var/lib/postgresql/data | PostgreSQL 数据 | pretalx-db | UID/GID 999,读写权限 (0755) |
/data | Redis 缓存数据 | pretalx-redis | UID/GID 999,读写权限 (0755) |
version: '3.8' services: pretalx: image: pretalx/pretalx:latest restart: always depends_on: - db - redis environment: - DATABASE_URL=postgres://pretalx:StrongPassword123!@db:5432/pretalx - REDIS_URL=redis://redis:6379/0 - SECRET_KEY=your-secure-secret-key - SITE_URL=[***] volumes: - /data/pretalx/data:/data # 自定义数据目录 networks: - pretalxdocker db: image: postgres:14-alpine restart: always environment: - POSTGRES_USER=pretalx - POSTGRES_PASSWORD=StrongPassword123! - POSTGRES_DB=pretalx volumes: - /data/pretalx/db:/var/lib/postgresql/data # 自定义数据库目录 networks: - pretalxdocker redis: image: redis:7-alpine restart: always volumes: - /data/pretalx/redis:/data # 自定义Redis目录 networks: - pretalxdocker networks: pretalxdocker:
# 添加到上述 docker-compose.yml 的 services 部分 traefik: image: traefik:v2.9 command: - "--providers.docker=true" - "--providers.docker.exposedbydefault=false" - "--entrypoints.web.address=:80" - "--entrypoints.websecure.address=:443" - "--certificatesresolvers.letsencrypt.acme.httpchallenge=true" - "--certificatesresolvers.letsencrypt.acme.httpchallenge.entrypoint=web" - "--certificatesresolvers.letsencrypt.acme.email=***" - "--certificatesresolvers.letsencrypt.acme.storage=/letsencrypt/acme.json" ports: - "80:80" - "443:443" volumes: - /var/run/docker.sock:/var/run/docker.sock:ro - /data/traefik/letsencrypt:/letsencrypt networks: - pretalxdocker # 修改 pretalx 服务,添加 Traefik 标签 pretalx: # ... 其他配置不变 ... labels: - "traefik.enable=true" - "traefik.http.routers.pretalx.rule=Host(`conf.example.com`)" - "traefik.http.routers.pretalx.entrypoints=websecure" - "traefik.http.routers.pretalx.tls.certresolver=letsencrypt" - "traefik.http.services.pretalx.load***.server.port=80"

免费版仅支持 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