diff --git a/blueprints/discourse/docker-compose.yml b/blueprints/discourse/docker-compose.yml index caafab5bb..d0353e8af 100644 --- a/blueprints/discourse/docker-compose.yml +++ b/blueprints/discourse/docker-compose.yml @@ -1,29 +1,24 @@ -version: '3.7' - services: discourse-db: - image: docker.io/bitnami/postgresql:17 - + image: pgvector/pgvector:pg16 volumes: - - discourse-postgresql-data:/bitnami/postgresql + - discourse-postgresql-data:/var/lib/postgresql/data environment: - POSTGRESQL_USERNAME: bn_discourse - POSTGRESQL_PASSWORD: ${POSTGRES_PASSWORD} - POSTGRESQL_DATABASE: bitnami_discourse + POSTGRES_USER: discourse + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} + POSTGRES_DB: discourse healthcheck: - test: ["CMD-SHELL", "pg_isready -U bn_discourse -d bitnami_discourse"] + test: ["CMD-SHELL", "pg_isready -U discourse -d discourse"] interval: 10s timeout: 5s retries: 5 restart: unless-stopped discourse-redis: - image: docker.io/bitnami/redis:7.4 - + image: redis:7-alpine volumes: - - discourse-redis-data:/bitnami/redis - environment: - REDIS_PASSWORD: ${REDIS_PASSWORD} + - discourse-redis-data:/data + command: redis-server --requirepass ${REDIS_PASSWORD} healthcheck: test: ["CMD", "redis-cli", "-a", "${REDIS_PASSWORD}", "ping"] interval: 10s @@ -32,59 +27,38 @@ services: restart: unless-stopped discourse-app: - image: docker.io/bitnamilegacy/discourse:3.5.0 - + image: discourse/discourse:2026.1.4 volumes: - - discourse-data:/bitnami/discourse + - discourse-data:/shared depends_on: discourse-db: condition: service_healthy discourse-redis: condition: service_healthy environment: - DISCOURSE_HOST: ${DISCOURSE_HOST} - DISCOURSE_DATABASE_HOST: discourse-db - DISCOURSE_DATABASE_PORT_NUMBER: 5432 - DISCOURSE_DATABASE_USER: bn_discourse - DISCOURSE_DATABASE_PASSWORD: ${POSTGRES_PASSWORD} - DISCOURSE_DATABASE_NAME: bitnami_discourse - DISCOURSE_REDIS_HOST: discourse-redis - DISCOURSE_REDIS_PORT_NUMBER: 6379 - DISCOURSE_REDIS_PASSWORD: ${REDIS_PASSWORD} - # Optional: Configure SMTP for email delivery - # DISCOURSE_SMTP_HOST: ${SMTP_HOST} - # DISCOURSE_SMTP_PORT: ${SMTP_PORT} - # DISCOURSE_SMTP_USER: ${SMTP_USER} - # DISCOURSE_SMTP_PASSWORD: ${SMTP_PASSWORD} - restart: unless-stopped - - discourse-sidekiq: - image: docker.io/bitnamilegacy/discourse:3.5.0 - - volumes: - - discourse-sidekiq-data:/bitnami/discourse - depends_on: - - discourse-app - command: /opt/bitnami/scripts/discourse-sidekiq/run.sh - environment: - DISCOURSE_HOST: ${DISCOURSE_HOST} - DISCOURSE_DATABASE_HOST: discourse-db - DISCOURSE_DATABASE_PORT_NUMBER: 5432 - DISCOURSE_DATABASE_USER: bn_discourse - DISCOURSE_DATABASE_PASSWORD: ${POSTGRES_PASSWORD} - DISCOURSE_DATABASE_NAME: bitnami_discourse + DISCOURSE_HOSTNAME: ${DISCOURSE_HOST} + DISCOURSE_DB_HOST: discourse-db + DISCOURSE_DB_PORT: 5432 + DISCOURSE_DB_USERNAME: discourse + DISCOURSE_DB_PASSWORD: ${POSTGRES_PASSWORD} + DISCOURSE_DB_NAME: discourse DISCOURSE_REDIS_HOST: discourse-redis - DISCOURSE_REDIS_PORT_NUMBER: 6379 + DISCOURSE_REDIS_PORT: 6379 DISCOURSE_REDIS_PASSWORD: ${REDIS_PASSWORD} - # Optional: Configure SMTP for email delivery - # DISCOURSE_SMTP_HOST: ${SMTP_HOST} + DISCOURSE_DEVELOPER_EMAILS: ${DISCOURSE_ADMIN_EMAIL} + # Required for email delivery - Discourse will not function correctly without SMTP + # DISCOURSE_SMTP_ADDRESS: ${SMTP_HOST} # DISCOURSE_SMTP_PORT: ${SMTP_PORT} - # DISCOURSE_SMTP_USER: ${SMTP_USER} + # DISCOURSE_SMTP_USER_NAME: ${SMTP_USER} # DISCOURSE_SMTP_PASSWORD: ${SMTP_PASSWORD} + # DISCOURSE_SMTP_ENABLE_START_TLS: "true" + # DISCOURSE_NOTIFICATION_EMAIL: [email protected] + # DISCOURSE_DEVELOPER_EMAILS: [email protected] + ports: + - 80 restart: unless-stopped volumes: discourse-postgresql-data: discourse-redis-data: discourse-data: - discourse-sidekiq-data: \ No newline at end of file diff --git a/blueprints/discourse/template.toml b/blueprints/discourse/template.toml index c02aa2c72..10358839b 100644 --- a/blueprints/discourse/template.toml +++ b/blueprints/discourse/template.toml @@ -1,11 +1,13 @@ [variables] main_domain = "${domain}" +admin_email = "${email}" postgres_password = "${password}" redis_password = "${password}" [config] env = [ "DISCOURSE_HOST=${main_domain}", + "DISCOURSE_ADMIN_EMAIL=${admin_email}", "POSTGRES_PASSWORD=${postgres_password}", "REDIS_PASSWORD=${redis_password}", ] @@ -13,5 +15,5 @@ mounts = [] [[config.domains]] serviceName = "discourse-app" -port = 3_000 -host = "${main_domain}" +port = 80 +host = "${main_domain}" \ No newline at end of file diff --git a/meta.json b/meta.json index 8be7825d7..1da9c8261 100644 --- a/meta.json +++ b/meta.json @@ -1785,7 +1785,7 @@ { "id": "discourse", "name": "Discourse", - "version": "3.5.0", + "version": "2026.1.4", "description": "Discourse is a modern forum software for your community. Use it as a mailing list, discussion forum, or long-form chat room.", "logo": "discourse.svg", "links": {