Commit | Line | Data |
---|---|---|
94153e98 JA |
1 | ## |
2 | ## After making changes to this file, you MUST rebuild for any changes | |
3 | ## to take effect in your live Discourse instance: | |
be82e068 | 4 | ## |
563dab7d | 5 | ## /var/discourse/launcher rebuild app |
94153e98 | 6 | ## |
cc0d15c5 | 7 | ## Make sure to obey YAML syntax! You can use this site to help check: |
8 | ## http://www.yamllint.com/ | |
94153e98 JA |
9 | |
10 | ## this is the all-in-one, standalone Discourse Docker container template | |
c687dd7b | 11 | |
85a3eaaf | 12 | # You may add rate limiting by uncommenting the web.ratelimited template. |
c687dd7b S |
13 | # Out of the box it allows 12 reqs a second per ip, and 100 per minute per ip |
14 | # This is configurable by amending the params in this file | |
15 | ||
b6f290a0 | 16 | templates: |
b6f290a0 SS |
17 | - "templates/postgres.template.yml" |
18 | - "templates/redis.template.yml" | |
b6f290a0 | 19 | - "templates/web.template.yml" |
b1bc7d97 | 20 | - "templates/web.ratelimited.template.yml" |
e741295a | 21 | |
94153e98 | 22 | ## which TCP/IP ports should this container expose? |
fbdbfba4 | 23 | expose: |
e741295a | 24 | - "80:80" # fwd host port 80 to container port 80 (http) |
fbdbfba4 | 25 | |
8b617e6e PG |
26 | # any extra arguments for Docker? |
27 | # docker_args: | |
28 | ||
6f99f3c2 | 29 | params: |
e56a65f6 | 30 | db_default_text_search_config: "pg_catalog.english" |
80a6f24a S |
31 | |
32 | ## Set db_shared_buffers to a max of 25% of the total memory. | |
33 | ## | |
34 | ## On 1GB installs set to 128MB (to leave room for other processes) | |
35 | ## on a 4GB instance you may raise to 1GB | |
6f99f3c2 S |
36 | #db_shared_buffers: "256MB" |
37 | # | |
80a6f24a S |
38 | ## Set higher on large instances it defaults to 10MB, for a 3GB install 40MB is a good default |
39 | ## this improves sorting performance, but adds memory usage per-connection | |
40 | #db_work_mem: "40MB" | |
41 | # | |
093a73b4 JA |
42 | ## Which Git revision should this container use? (default: tests-passed) |
43 | #version: tests-passed | |
fbdbfba4 | 44 | |
fbdbfba4 | 45 | env: |
3cb3d9c4 | 46 | LANG: en_US.UTF-8 |
cc0d15c5 | 47 | # DISCOURSE_DEFAULT_LOCALE: en |
48 | ||
e56a65f6 | 49 | ## TODO: How many concurrent web requests are supported? |
94153e98 | 50 | ## With 2GB we recommend 3-4 workers, with 1GB only 2 |
7799fb73 | 51 | ## If you have lots of memory, use one or two workers per logical CPU core |
075922a5 | 52 | #UNICORN_WORKERS: 3 |
cc0d15c5 | 53 | |
e56a65f6 | 54 | ## TODO: List of comma delimited emails that will be made admin and developer |
c82ae929 | 55 | ## on initial signup example 'user1@example.com,user2@example.com' |
093a73b4 | 56 | DISCOURSE_DEVELOPER_EMAILS: 'me@example.com' |
cc0d15c5 | 57 | |
e56a65f6 | 58 | ## TODO: The domain name this Discourse instance will respond to |
94153e98 | 59 | DISCOURSE_HOSTNAME: 'discourse.example.com' |
cc0d15c5 | 60 | |
e56a65f6 | 61 | ## TODO: The mailserver this Discourse instance will use |
093a73b4 | 62 | DISCOURSE_SMTP_ADDRESS: smtp.example.com # (mandatory) |
075922a5 CR |
63 | #DISCOURSE_SMTP_PORT: 587 # (optional) |
64 | #DISCOURSE_SMTP_USER_NAME: user@example.com # (optional) | |
7439768e | 65 | #DISCOURSE_SMTP_PASSWORD: pa$$word # (optional, WARNING the char '#' in pw can cause problems!) |
b1d030e5 | 66 | #DISCOURSE_SMTP_ENABLE_START_TLS: true # (optional, default true) |
cc0d15c5 | 67 | |
1cb802ad | 68 | ## The CDN address for this Discourse instance (configured to pull) |
075922a5 | 69 | #DISCOURSE_CDN_URL: //discourse-cdn.example.com |
1fe0bcd3 | 70 | |
94153e98 | 71 | ## These containers are stateless, all data is stored in /shared |
1fe0bcd3 SS |
72 | volumes: |
73 | - volume: | |
be82e068 | 74 | host: /var/discourse/shared/standalone |
1fe0bcd3 | 75 | guest: /shared |
be82e068 S |
76 | - volume: |
77 | host: /var/discourse/shared/standalone/log/var-log | |
78 | guest: /var/log | |
b488838a | 79 | |
6b21e9cd | 80 | ## The docker manager plugin allows you to one-click upgrade Discourse |
94153e98 | 81 | ## http://discourse.example.com/admin/docker |
b488838a SS |
82 | hooks: |
83 | after_code: | |
84 | - exec: | |
85 | cd: $home/plugins | |
86 | cmd: | |
b488838a | 87 | - git clone https://github.com/discourse/docker_manager.git |
e741295a | 88 | |
94153e98 | 89 | ## Remember, this is YAML syntax - you can only have one block with a name |
e741295a MB |
90 | run: |
91 | - exec: echo "Beginning of custom commands" | |
92 | ||
9c329429 | 93 | ## If you want to set the 'From' email address for your first registration, uncomment and change: |
94 | #- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'" | |
95 | ## After getting the first signup email, re-comment the line. It only needs to run once. | |
96 | ||
e741295a | 97 | ## If you want to configure password login for root, uncomment and change: |
e741295a MB |
98 | ## Use only one of the following lines: |
99 | #- exec: /usr/sbin/usermod -p 'PASSWORD_HASH' root | |
100 | #- exec: /usr/sbin/usermod -p "$(mkpasswd -m sha-256 'RAW_PASSWORD')" root | |
101 | ||
e741295a MB |
102 | - exec: echo "End of custom commands" |
103 | - exec: awk -F\# '{print $1;}' ~/.ssh/authorized_keys | awk 'BEGIN { print "Authorized SSH keys for this container:"; } NF>=2 {print $NF;}' |