chore: update app.yml and traefik.yml configuration
This commit is contained in:
parent
37fd5efc9a
commit
64e86857ed
4 changed files with 340 additions and 0 deletions
127
app.yml
Normal file
127
app.yml
Normal file
|
|
@ -0,0 +1,127 @@
|
||||||
|
## this is the all-in-one, standalone Discourse Docker container template
|
||||||
|
##
|
||||||
|
## After making changes to this file, you MUST rebuild
|
||||||
|
## /var/discourse/launcher rebuild app
|
||||||
|
##
|
||||||
|
## BE *VERY* CAREFUL WHEN EDITING!
|
||||||
|
## YAML FILES ARE SUPER SUPER SENSITIVE TO MISTAKES IN WHITESPACE OR ALIGNMENT!
|
||||||
|
## visit http://www.yamllint.com/ to validate this file as needed
|
||||||
|
|
||||||
|
templates:
|
||||||
|
- "templates/postgres.template.yml"
|
||||||
|
- "templates/redis.template.yml"
|
||||||
|
- "templates/web.template.yml"
|
||||||
|
- "templates/web.ratelimited.template.yml"
|
||||||
|
## Uncomment these two lines if you wish to add Lets Encrypt (https)
|
||||||
|
# - "templates/web.ssl.template.yml"
|
||||||
|
# - "templates/web.letsencrypt.ssl.template.yml"
|
||||||
|
|
||||||
|
## which TCP/IP ports should this container expose?
|
||||||
|
## If you want Discourse to share a port with another webserver like Apache or nginx,
|
||||||
|
## see https://meta.discourse.org/t/17247 for details
|
||||||
|
expose:
|
||||||
|
- "8080:80" # http
|
||||||
|
# - "443:443" # https
|
||||||
|
|
||||||
|
docker_args:
|
||||||
|
- "--network=traefik"
|
||||||
|
- "--label=traefik.enable=true"
|
||||||
|
- "--label=traefik.http.routers.discourse.rule=Host(`forum.mtd.runfoo.run`)"
|
||||||
|
- "--label=traefik.http.routers.discourse.entrypoints=websecure"
|
||||||
|
- "--label=traefik.http.routers.discourse.tls.certresolver=letsencrypt"
|
||||||
|
- "--label=traefik.http.services.discourse.loadbalancer.server.port=80"
|
||||||
|
|
||||||
|
params:
|
||||||
|
db_default_text_search_config: "pg_catalog.english"
|
||||||
|
|
||||||
|
## Set db_shared_buffers to a max of 25% of the total memory.
|
||||||
|
## will be set automatically by bootstrap based on detected RAM, or you can override
|
||||||
|
db_shared_buffers: "3072MB"
|
||||||
|
|
||||||
|
## can improve sorting performance, but adds memory usage per-connection
|
||||||
|
#db_work_mem: "40MB"
|
||||||
|
|
||||||
|
## Which Git revision should this container use? (default: latest)
|
||||||
|
#version: latest
|
||||||
|
|
||||||
|
env:
|
||||||
|
LC_ALL: en_US.UTF-8
|
||||||
|
LANG: en_US.UTF-8
|
||||||
|
LANGUAGE: en_US.UTF-8
|
||||||
|
# DISCOURSE_DEFAULT_LOCALE: en
|
||||||
|
|
||||||
|
## How many concurrent web requests are supported? Depends on memory and CPU cores.
|
||||||
|
## will be set automatically by bootstrap based on detected CPUs, or you can override
|
||||||
|
UNICORN_WORKERS: 6
|
||||||
|
|
||||||
|
## TODO: The domain name this Discourse instance will respond to
|
||||||
|
## Required. Discourse will not work with a bare IP number.
|
||||||
|
DISCOURSE_HOSTNAME: forum.mtd.runfoo.run
|
||||||
|
|
||||||
|
## Uncomment if you want the container to be started with the same
|
||||||
|
## hostname (-h option) as specified above (default "$hostname-$config")
|
||||||
|
#DOCKER_USE_HOSTNAME: true
|
||||||
|
|
||||||
|
## TODO: List of comma delimited emails that will be made admin and developer
|
||||||
|
## on initial signup example 'user1@example.com,user2@example.com'
|
||||||
|
DISCOURSE_DEVELOPER_EMAILS: 'tenwest@pm.me'
|
||||||
|
|
||||||
|
## TODO: Configure the mail server
|
||||||
|
## (used for validation of new accounts, notifications, digests, etc.)
|
||||||
|
## required: hostname of the SMTP mail server used to send mail
|
||||||
|
DISCOURSE_SMTP_ADDRESS: 216.158.230.94
|
||||||
|
## uncomment to set the port to something other than the default (25)
|
||||||
|
DISCOURSE_SMTP_PORT: 25
|
||||||
|
## USER_NAME / PASSWORD required if the SMTP provider needs authentication
|
||||||
|
## WARNING: a '#' in the SMTP password can be misinterpreted; ensure it's inside string quotes, e.g.:
|
||||||
|
## DISCOURSE_SMTP_PASSWORD: "#pass#ord"
|
||||||
|
# DISCOURSE_SMTP_USER_NAME: user@example.com
|
||||||
|
# DISCOURSE_SMTP_PASSWORD: ""
|
||||||
|
## uncomment to enable implicit TLS at connection time, probably needed for using port 465
|
||||||
|
#DISCOURSE_SMTP_FORCE_TLS: true
|
||||||
|
## uncomment to set the HELO/EHLO domain, only set if required by provider
|
||||||
|
DISCOURSE_SMTP_DOMAIN: mtd.runfoo.run
|
||||||
|
## the address from which notifications are sent
|
||||||
|
DISCOURSE_NOTIFICATION_EMAIL: noreply@mtd.runfoo.run
|
||||||
|
## uncomment to change server certificate verification
|
||||||
|
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none # peer|none
|
||||||
|
## uncomment to override the authentication method
|
||||||
|
#DISCOURSE_SMTP_AUTHENTICATION: plain # plain|login|cram_md5
|
||||||
|
|
||||||
|
## If you added the Lets Encrypt template, uncomment below to get a free SSL certificate
|
||||||
|
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
|
||||||
|
|
||||||
|
## The http or https CDN address for this Discourse instance (configured to pull)
|
||||||
|
## see https://meta.discourse.org/t/14857 for details
|
||||||
|
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
|
||||||
|
|
||||||
|
## The maxmind geolocation IP account ID and license key for IP address lookups
|
||||||
|
## see https://meta.discourse.org/t/-/173941 for details
|
||||||
|
#DISCOURSE_MAXMIND_ACCOUNT_ID: 123456
|
||||||
|
#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
|
||||||
|
|
||||||
|
## The Docker container is stateless; all data is stored in /shared
|
||||||
|
volumes:
|
||||||
|
- volume:
|
||||||
|
host: /var/discourse/shared/standalone
|
||||||
|
guest: /shared
|
||||||
|
- volume:
|
||||||
|
host: /var/discourse/shared/standalone/log/var-log
|
||||||
|
guest: /var/log
|
||||||
|
|
||||||
|
## Plugins go here
|
||||||
|
## see https://meta.discourse.org/t/19157 for details
|
||||||
|
hooks:
|
||||||
|
after_code:
|
||||||
|
- exec:
|
||||||
|
cd: $home/plugins
|
||||||
|
cmd:
|
||||||
|
- git clone https://github.com/discourse/docker_manager.git
|
||||||
|
|
||||||
|
## Any custom commands to run after building
|
||||||
|
run:
|
||||||
|
- exec: echo "Beginning of custom commands"
|
||||||
|
## If you want to set the 'From' email address for your first registration, uncomment and change:
|
||||||
|
## After getting the first signup email, re-comment the line. It only needs to run once.
|
||||||
|
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
|
||||||
|
- exec: echo "End of custom commands"
|
||||||
127
app.yml.fixed
Normal file
127
app.yml.fixed
Normal file
|
|
@ -0,0 +1,127 @@
|
||||||
|
## this is the all-in-one, standalone Discourse Docker container template
|
||||||
|
##
|
||||||
|
## After making changes to this file, you MUST rebuild
|
||||||
|
## /var/discourse/launcher rebuild app
|
||||||
|
##
|
||||||
|
## BE *VERY* CAREFUL WHEN EDITING!
|
||||||
|
## YAML FILES ARE SUPER SUPER SENSITIVE TO MISTAKES IN WHITESPACE OR ALIGNMENT!
|
||||||
|
## visit http://www.yamllint.com/ to validate this file as needed
|
||||||
|
|
||||||
|
templates:
|
||||||
|
- "templates/postgres.template.yml"
|
||||||
|
- "templates/redis.template.yml"
|
||||||
|
- "templates/web.template.yml"
|
||||||
|
- "templates/web.ratelimited.template.yml"
|
||||||
|
## Uncomment these two lines if you wish to add Lets Encrypt (https)
|
||||||
|
# - "templates/web.ssl.template.yml"
|
||||||
|
# - "templates/web.letsencrypt.ssl.template.yml"
|
||||||
|
|
||||||
|
## which TCP/IP ports should this container expose?
|
||||||
|
## If you want Discourse to share a port with another webserver like Apache or nginx,
|
||||||
|
## see https://meta.discourse.org/t/17247 for details
|
||||||
|
expose:
|
||||||
|
- "8080:80" # http
|
||||||
|
# - "443:443" # https
|
||||||
|
|
||||||
|
docker_args:
|
||||||
|
- "--network=traefik"
|
||||||
|
- "--label=traefik.enable=true"
|
||||||
|
- "--label=traefik.http.routers.discourse.rule=Host(`forum.mtd.runfoo.run`)"
|
||||||
|
- "--label=traefik.http.routers.discourse.entrypoints=websecure"
|
||||||
|
- "--label=traefik.http.routers.discourse.tls.certresolver=letsencrypt"
|
||||||
|
- "--label=traefik.http.services.discourse.loadbalancer.server.port=80"
|
||||||
|
|
||||||
|
params:
|
||||||
|
db_default_text_search_config: "pg_catalog.english"
|
||||||
|
|
||||||
|
## Set db_shared_buffers to a max of 25% of the total memory.
|
||||||
|
## will be set automatically by bootstrap based on detected RAM, or you can override
|
||||||
|
db_shared_buffers: "3072MB"
|
||||||
|
|
||||||
|
## can improve sorting performance, but adds memory usage per-connection
|
||||||
|
#db_work_mem: "40MB"
|
||||||
|
|
||||||
|
## Which Git revision should this container use? (default: latest)
|
||||||
|
#version: latest
|
||||||
|
|
||||||
|
env:
|
||||||
|
LC_ALL: en_US.UTF-8
|
||||||
|
LANG: en_US.UTF-8
|
||||||
|
LANGUAGE: en_US.UTF-8
|
||||||
|
# DISCOURSE_DEFAULT_LOCALE: en
|
||||||
|
|
||||||
|
## How many concurrent web requests are supported? Depends on memory and CPU cores.
|
||||||
|
## will be set automatically by bootstrap based on detected CPUs, or you can override
|
||||||
|
UNICORN_WORKERS: 6
|
||||||
|
|
||||||
|
## TODO: The domain name this Discourse instance will respond to
|
||||||
|
## Required. Discourse will not work with a bare IP number.
|
||||||
|
DISCOURSE_HOSTNAME: forum.mtd.runfoo.run
|
||||||
|
|
||||||
|
## Uncomment if you want the container to be started with the same
|
||||||
|
## hostname (-h option) as specified above (default "$hostname-$config")
|
||||||
|
#DOCKER_USE_HOSTNAME: true
|
||||||
|
|
||||||
|
## TODO: List of comma delimited emails that will be made admin and developer
|
||||||
|
## on initial signup example 'user1@example.com,user2@example.com'
|
||||||
|
DISCOURSE_DEVELOPER_EMAILS: 'tenwest@pm.me'
|
||||||
|
|
||||||
|
## TODO: Configure the mail server
|
||||||
|
## (used for validation of new accounts, notifications, digests, etc.)
|
||||||
|
## required: hostname of the SMTP mail server used to send mail
|
||||||
|
DISCOURSE_SMTP_ADDRESS: 216.158.230.94
|
||||||
|
## uncomment to set the port to something other than the default (25)
|
||||||
|
DISCOURSE_SMTP_PORT: 25
|
||||||
|
## USER_NAME / PASSWORD required if the SMTP provider needs authentication
|
||||||
|
## WARNING: a '#' in the SMTP password can be misinterpreted; ensure it's inside string quotes, e.g.:
|
||||||
|
## DISCOURSE_SMTP_PASSWORD: "#pass#ord"
|
||||||
|
# DISCOURSE_SMTP_USER_NAME: user@example.com
|
||||||
|
# DISCOURSE_SMTP_PASSWORD: ""
|
||||||
|
## uncomment to enable implicit TLS at connection time, probably needed for using port 465
|
||||||
|
#DISCOURSE_SMTP_FORCE_TLS: true
|
||||||
|
## uncomment to set the HELO/EHLO domain, only set if required by provider
|
||||||
|
DISCOURSE_SMTP_DOMAIN: mtd.runfoo.run
|
||||||
|
## the address from which notifications are sent
|
||||||
|
DISCOURSE_NOTIFICATION_EMAIL: noreply@mtd.runfoo.run
|
||||||
|
## uncomment to change server certificate verification
|
||||||
|
DISCOURSE_SMTP_OPENSSL_VERIFY_MODE: none # peer|none
|
||||||
|
## uncomment to override the authentication method
|
||||||
|
#DISCOURSE_SMTP_AUTHENTICATION: plain # plain|login|cram_md5
|
||||||
|
|
||||||
|
## If you added the Lets Encrypt template, uncomment below to get a free SSL certificate
|
||||||
|
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
|
||||||
|
|
||||||
|
## The http or https CDN address for this Discourse instance (configured to pull)
|
||||||
|
## see https://meta.discourse.org/t/14857 for details
|
||||||
|
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
|
||||||
|
|
||||||
|
## The maxmind geolocation IP account ID and license key for IP address lookups
|
||||||
|
## see https://meta.discourse.org/t/-/173941 for details
|
||||||
|
#DISCOURSE_MAXMIND_ACCOUNT_ID: 123456
|
||||||
|
#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
|
||||||
|
|
||||||
|
## The Docker container is stateless; all data is stored in /shared
|
||||||
|
volumes:
|
||||||
|
- volume:
|
||||||
|
host: /var/discourse/shared/standalone
|
||||||
|
guest: /shared
|
||||||
|
- volume:
|
||||||
|
host: /var/discourse/shared/standalone/log/var-log
|
||||||
|
guest: /var/log
|
||||||
|
|
||||||
|
## Plugins go here
|
||||||
|
## see https://meta.discourse.org/t/19157 for details
|
||||||
|
hooks:
|
||||||
|
after_code:
|
||||||
|
- exec:
|
||||||
|
cd: $home/plugins
|
||||||
|
cmd:
|
||||||
|
- git clone https://github.com/discourse/docker_manager.git
|
||||||
|
|
||||||
|
## Any custom commands to run after building
|
||||||
|
run:
|
||||||
|
- exec: echo "Beginning of custom commands"
|
||||||
|
## If you want to set the 'From' email address for your first registration, uncomment and change:
|
||||||
|
## After getting the first signup email, re-comment the line. It only needs to run once.
|
||||||
|
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
|
||||||
|
- exec: echo "End of custom commands"
|
||||||
43
traefik.yml
Normal file
43
traefik.yml
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
api:
|
||||||
|
dashboard: true
|
||||||
|
insecure: false
|
||||||
|
|
||||||
|
entryPoints:
|
||||||
|
web:
|
||||||
|
address: ":80"
|
||||||
|
websecure:
|
||||||
|
address: ":443"
|
||||||
|
|
||||||
|
providers:
|
||||||
|
docker:
|
||||||
|
endpoint: "unix:///var/run/docker.sock"
|
||||||
|
exposedByDefault: false
|
||||||
|
network: traefik
|
||||||
|
|
||||||
|
certificatesResolvers:
|
||||||
|
letsencrypt:
|
||||||
|
acme:
|
||||||
|
httpChallenge:
|
||||||
|
entryPoint: web
|
||||||
|
email: tenwest@proton.me
|
||||||
|
storage: /data/acme.json
|
||||||
|
caServer: https://acme-v02.api.letsencrypt.org/directory
|
||||||
|
|
||||||
|
accessLog: {}
|
||||||
|
|
||||||
|
http:
|
||||||
|
middlewares:
|
||||||
|
redirect-to-https:
|
||||||
|
redirectScheme:
|
||||||
|
scheme: https
|
||||||
|
permanent: true
|
||||||
|
|
||||||
|
routers:
|
||||||
|
web-redirect:
|
||||||
|
rule: "HostRegexp(`{host:.+}`)"
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
middlewares:
|
||||||
|
- redirect-to-https
|
||||||
|
service: "noop@internal"
|
||||||
|
priority: 1
|
||||||
43
traefik.yml.new
Normal file
43
traefik.yml.new
Normal file
|
|
@ -0,0 +1,43 @@
|
||||||
|
api:
|
||||||
|
dashboard: true
|
||||||
|
insecure: false
|
||||||
|
|
||||||
|
entryPoints:
|
||||||
|
web:
|
||||||
|
address: ":80"
|
||||||
|
websecure:
|
||||||
|
address: ":443"
|
||||||
|
|
||||||
|
providers:
|
||||||
|
docker:
|
||||||
|
endpoint: "unix:///var/run/docker.sock"
|
||||||
|
exposedByDefault: false
|
||||||
|
network: traefik
|
||||||
|
|
||||||
|
certificatesResolvers:
|
||||||
|
letsencrypt:
|
||||||
|
acme:
|
||||||
|
httpChallenge:
|
||||||
|
entryPoint: web
|
||||||
|
email: tenwest@proton.me
|
||||||
|
storage: /data/acme.json
|
||||||
|
caServer: https://acme-v02.api.letsencrypt.org/directory
|
||||||
|
|
||||||
|
accessLog: {}
|
||||||
|
|
||||||
|
http:
|
||||||
|
middlewares:
|
||||||
|
redirect-to-https:
|
||||||
|
redirectScheme:
|
||||||
|
scheme: https
|
||||||
|
permanent: true
|
||||||
|
|
||||||
|
routers:
|
||||||
|
web-redirect:
|
||||||
|
rule: "HostRegexp(`{host:.+}`)"
|
||||||
|
entryPoints:
|
||||||
|
- web
|
||||||
|
middlewares:
|
||||||
|
- redirect-to-https
|
||||||
|
service: "noop@internal"
|
||||||
|
priority: 1
|
||||||
Loading…
Add table
Reference in a new issue