Commit | Line | Data |
---|---|---|
f5713ebf | 1 | ## this is the all-in-one, standalone Discourse Docker container template |
94153e98 | 2 | ## |
703cd7f2 | 3 | ## After making changes to this file, you MUST rebuild |
563dab7d | 4 | ## /var/discourse/launcher rebuild app |
94153e98 | 5 | ## |
a1041f18 JA |
6 | ## BE *VERY* CAREFUL WHEN EDITING! |
7 | ## YAML FILES ARE SUPER SUPER SENSITIVE TO MISTAKES IN WHITESPACE OR ALIGNMENT! | |
f5713ebf | 8 | ## visit http://www.yamllint.com/ to validate this file as needed |
c687dd7b | 9 | |
b6f290a0 | 10 | templates: |
b6f290a0 SS |
11 | - "templates/postgres.template.yml" |
12 | - "templates/redis.template.yml" | |
b6f290a0 | 13 | - "templates/web.template.yml" |
b1bc7d97 | 14 | - "templates/web.ratelimited.template.yml" |
f5713ebf | 15 | ## Uncomment these two lines if you wish to add Lets Encrypt (https) |
a1041f18 JA |
16 | #- "templates/web.ssl.template.yml" |
17 | #- "templates/web.letsencrypt.ssl.template.yml" | |
f17af951 | 18 | |
94153e98 | 19 | ## which TCP/IP ports should this container expose? |
f5713ebf JA |
20 | ## If you want Discourse to share a port with another webserver like Apache or nginx, |
21 | ## see https://meta.discourse.org/t/17247 for details | |
fbdbfba4 | 22 | expose: |
f5713ebf JA |
23 | - "80:80" # http |
24 | - "443:443" # https | |
8b617e6e | 25 | |
6f99f3c2 | 26 | params: |
e56a65f6 | 27 | db_default_text_search_config: "pg_catalog.english" |
80a6f24a S |
28 | |
29 | ## Set db_shared_buffers to a max of 25% of the total memory. | |
0693cb71 | 30 | ## will be set automatically by bootstrap based on detected RAM, or you can override |
6f99f3c2 | 31 | #db_shared_buffers: "256MB" |
f17af951 | 32 | |
703cd7f2 | 33 | ## can improve sorting performance, but adds memory usage per-connection |
80a6f24a | 34 | #db_work_mem: "40MB" |
f17af951 | 35 | |
093a73b4 JA |
36 | ## Which Git revision should this container use? (default: tests-passed) |
37 | #version: tests-passed | |
fbdbfba4 | 38 | |
fbdbfba4 | 39 | env: |
a4b6986b | 40 | LC_ALL: en_US.UTF-8 |
3cb3d9c4 | 41 | LANG: en_US.UTF-8 |
a4b6986b | 42 | LANGUAGE: en_US.UTF-8 |
cc0d15c5 | 43 | # DISCOURSE_DEFAULT_LOCALE: en |
44 | ||
f5713ebf | 45 | ## How many concurrent web requests are supported? Depends on memory and CPU cores. |
0693cb71 | 46 | ## will be set automatically by bootstrap based on detected CPUs, or you can override |
075922a5 | 47 | #UNICORN_WORKERS: 3 |
cc0d15c5 | 48 | |
e56a65f6 | 49 | ## TODO: The domain name this Discourse instance will respond to |
275735af | 50 | ## Required. Discourse will not work with a bare IP number. |
94153e98 | 51 | DISCOURSE_HOSTNAME: 'discourse.example.com' |
f17af951 | 52 | |
bcc8b512 JA |
53 | ## Uncomment if you want the container to be started with the same |
54 | ## hostname (-h option) as specified above (default "$hostname-$config") | |
c6dd6f9d | 55 | #DOCKER_USE_HOSTNAME: true |
cc0d15c5 | 56 | |
a5441ecf JA |
57 | ## TODO: List of comma delimited emails that will be made admin and developer |
58 | ## on initial signup example 'user1@example.com,user2@example.com' | |
f17af951 | 59 | DISCOURSE_DEVELOPER_EMAILS: 'me@example.com,you@example.com' |
a5441ecf | 60 | |
703cd7f2 | 61 | ## TODO: The SMTP mail server used to validate new accounts and send notifications |
275735af JP |
62 | # SMTP ADDRESS, username, and password are required |
63 | # WARNING the char '#' in SMTP password can cause problems! | |
64 | DISCOURSE_SMTP_ADDRESS: smtp.example.com | |
65 | #DISCOURSE_SMTP_PORT: 587 | |
66 | DISCOURSE_SMTP_USER_NAME: user@example.com | |
67 | DISCOURSE_SMTP_PASSWORD: pa$$word | |
b1d030e5 | 68 | #DISCOURSE_SMTP_ENABLE_START_TLS: true # (optional, default true) |
52dc3cc2 | 69 | #DISCOURSE_SMTP_DOMAIN: discourse.example.com # (required by some providers) |
cc5b00a4 | 70 | #DISCOURSE_NOTIFICATION_EMAIL: noreply@discourse.example.com # (address to send notifications from) |
f17af951 | 71 | |
703cd7f2 | 72 | ## If you added the Lets Encrypt template, uncomment below to get a free SSL certificate |
650f4c25 | 73 | #LETSENCRYPT_ACCOUNT_EMAIL: me@example.com |
cc0d15c5 | 74 | |
303eb030 | 75 | ## The http or https CDN address for this Discourse instance (configured to pull) |
f5713ebf | 76 | ## see https://meta.discourse.org/t/14857 for details |
303eb030 | 77 | #DISCOURSE_CDN_URL: https://discourse-cdn.example.com |
d9f2f312 JA |
78 | |
79 | ## The maxmind geolocation IP address key for IP address lookup | |
80 | ## see https://meta.discourse.org/t/-/137387/23 for details | |
81 | #DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456 | |
1fe0bcd3 | 82 | |
703cd7f2 | 83 | ## The Docker container is stateless; all data is stored in /shared |
1fe0bcd3 SS |
84 | volumes: |
85 | - volume: | |
be82e068 | 86 | host: /var/discourse/shared/standalone |
1fe0bcd3 | 87 | guest: /shared |
be82e068 S |
88 | - volume: |
89 | host: /var/discourse/shared/standalone/log/var-log | |
90 | guest: /var/log | |
b488838a | 91 | |
703cd7f2 | 92 | ## Plugins go here |
3a83511c | 93 | ## see https://meta.discourse.org/t/19157 for details |
b488838a SS |
94 | hooks: |
95 | after_code: | |
96 | - exec: | |
97 | cd: $home/plugins | |
98 | cmd: | |
b488838a | 99 | - git clone https://github.com/discourse/docker_manager.git |
e741295a | 100 | |
703cd7f2 | 101 | ## Any custom commands to run after building |
e741295a MB |
102 | run: |
103 | - exec: echo "Beginning of custom commands" | |
9c329429 | 104 | ## If you want to set the 'From' email address for your first registration, uncomment and change: |
9c329429 | 105 | ## After getting the first signup email, re-comment the line. It only needs to run once. |
f5713ebf | 106 | #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'" |
e741295a | 107 | - exec: echo "End of custom commands" |