# # `docker-compose` file used ONLY for hobby deployments. # # Please take a look at https://posthog.com/docs/self-host/deploy/hobby # for more info. # services: db: extends: file: docker-compose.base.yml service: db volumes: - postgres-data:/var/lib/postgresql/data redis: extends: file: docker-compose.base.yml service: redis clickhouse: # # Note: please keep the default version in sync across # `posthog` and the `charts-clickhouse` repos # extends: file: docker-compose.base.yml service: clickhouse restart: on-failure depends_on: - kafka - zookeeper volumes: - ./posthog/posthog/idl:/idl - ./posthog/docker/clickhouse/docker-entrypoint-initdb.d:/docker-entrypoint-initdb.d - ./posthog/docker/clickhouse/config.xml:/etc/clickhouse-server/config.xml - ./posthog/docker/clickhouse/users.xml:/etc/clickhouse-server/users.xml - clickhouse-data:/var/lib/clickhouse zookeeper: extends: file: docker-compose.base.yml service: zookeeper volumes: - zookeeper-datalog:/datalog - zookeeper-data:/data - zookeeper-logs:/logs kafka: extends: file: docker-compose.base.yml service: kafka worker: &worker image: posthog/posthog:$POSTHOG_APP_TAG command: ./bin/docker-worker-celery --with-scheduler restart: on-failure environment: SENTRY_DSN: $SENTRY_DSN SITE_URL: https://$DOMAIN DISABLE_SECURE_SSL_REDIRECT: 'true' IS_BEHIND_PROXY: 'true' DATABASE_URL: 'postgres://posthog:posthog@db:5432/posthog' CLICKHOUSE_HOST: 'clickhouse' CLICKHOUSE_DATABASE: 'posthog' CLICKHOUSE_SECURE: 'false' CLICKHOUSE_VERIFY: 'false' KAFKA_URL: 'kafka://kafka' REDIS_URL: 'redis://redis:6379/' SECRET_KEY: $POSTHOG_SECRET PGHOST: db PGUSER: posthog PGPASSWORD: posthog DEPLOYMENT: hobby depends_on: - db - redis - clickhouse - kafka - object_storage web: <<: *worker command: /compose/start restart: on-failure volumes: - ./compose:/compose caddy: image: caddy:2.6.1 restart: unless-stopped ports: - '80:80' - '443:443' volumes: - ./Caddyfile:/etc/caddy/Caddyfile depends_on: - web plugins: image: posthog/posthog:$POSTHOG_APP_TAG command: ./bin/plugin-server --no-restart-loop restart: on-failure environment: DATABASE_URL: 'postgres://posthog:posthog@db:5432/posthog' KAFKA_HOSTS: 'kafka:9092' REDIS_URL: 'redis://redis:6379/' CLICKHOUSE_HOST: 'clickhouse' depends_on: - db - redis - clickhouse - kafka - object_storage object_storage: extends: file: docker-compose.base.yml service: object_storage restart: on-failure volumes: - object_storage:/data asyncmigrationscheck: <<: *worker command: python manage.py run_async_migrations --check restart: 'no' scale: 0 volumes: zookeeper-data: zookeeper-datalog: zookeeper-logs: object_storage: postgres-data: clickhouse-data: