You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker-Compose部署OpenProject 如何跳过演示项目创建

OpenProject Docker部署跳过初始化演示项目方法

参照官方指南与官方部署项目,使用Docker Compose完成OpenProject安装部署时,可通过内置环境变量在初始化阶段跳过自动创建的Scrum project和Demo project两个演示项目,无需修改源码或自定义启动脚本。

配置步骤

在现有docker-compose.yml的x-op-app公共配置段的environment列表中,新增如下环境变量配置:

OPENPROJECT_SEED__DEMO__DATA: "false"

该变量是OpenProject预置的种子数据控制开关,设为false后,初始化阶段的seeder服务将不会加载演示项目相关的种子数据,也就不会自动生成两个示例项目。

注意事项

  • 该配置仅在首次全新初始化时生效:如果OpenProject已经完成过启动流程、数据库中已经生成了演示项目,再添加该配置不会自动删除已有内容。这种场景下可以直接在后台项目管理页手动删除两个演示项目,或者清空pgdata、opdata挂载卷后重新执行全新部署。
  • 修改完配置文件后,全新部署直接执行启动命令即可;如果是修改已有部署的配置,执行docker-compose up -d重启服务即可。

附:调整后的完整docker-compose.yml参考

version: "3.7"

networks:
  frontend:
  backend:

volumes:
  pgdata:
  opdata:

x-op-restart-policy: &restart_policy
  restart: unless-stopped
x-op-image: &image
  image: openproject/community:${TAG:-12}
x-op-app: &app
  <<: *image
  <<: *restart_policy
  environment:
    RAILS_CACHE_STORE: "memcache"
    OPENPROJECT_CACHE__MEMCACHE__SERVER: "cache:11211"
    OPENPROJECT_RAILS__RELATIVE__URL__ROOT: "${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}"
    DATABASE_URL: "${DATABASE_URL:-postgres://postgres:p4ssw0rd@db/openproject?pool=20&encoding=unicode&reconnect=true}"
    RAILS_MIN_THREADS: 4
    RAILS_MAX_THREADS: 16
    # 设为true可开启邮件接收功能
    IMAP_ENABLED: "${IMAP_ENABLED:-false}"
    # 新增以下配置跳过演示项目初始化
    OPENPROJECT_SEED__DEMO__DATA: "false"
  volumes:
    - "${OPDATA:-opdata}:/var/openproject/assets"

services:
  db:
    image: postgres:13
    <<: *restart_policy
    stop_grace_period: "3s"
    volumes:
      - "${PGDATA:-pgdata}:/var/lib/postgresql/data"
    environment:
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-p4ssw0rd}
      POSTGRES_DB: openproject
    networks:
      - backend

  cache:
    image: memcached
    <<: *restart_policy
    networks:
      - backend

  proxy:
    <<: *image
    <<: *restart_policy
    command: "./docker/prod/proxy"
    ports:
      - "${PORT:-8080}:80"
    environment:
      APP_HOST: web
      OPENPROJECT_RAILS__RELATIVE__URL__ROOT: "${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}"
    depends_on:
      - web
    networks:
      - frontend

  web:
    <<: *app
    command: "./docker/prod/web"
    networks:
      - frontend
      - backend
    depends_on:
      - db
      - cache
      - seeder
    labels:
      - autoheal=true
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8080${OPENPROJECT_RAILS__RELATIVE__URL__ROOT:-}/health_checks/default"]
      interval: 10s
      timeout: 3s
      retries: 3
      start_period: 30s

  autoheal:
    image: willfarrell/autoheal:1.2.0
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
    environment:
      AUTOHEAL_CONTAINER_LABEL: autoheal

  worker:
    <<: *app
    command: "./docker/prod/worker"
    networks:
      - backend
    depends_on:
      - db
      - cache
      - seeder

  cron:
    <<: *app
    command: "./docker/prod/cron"
    networks:
      - backend
    depends_on:
      - db
      - cache
      - seeder

  seeder:
    <<: *app
    command: "./docker/prod/seeder"
    restart: on-failure
    networks:
      - backend

初始化自动生成的演示项目示例截图


内容的提问来源于stack exchange,提问作者1Z10

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.30 14:51:11