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" |
be82e068 | 20 | - "templates/sshd.template.yml" |
b1bc7d97 | 21 | - "templates/web.ratelimited.template.yml" |
e741295a | 22 | |
94153e98 | 23 | ## which TCP/IP ports should this container expose? |
fbdbfba4 | 24 | expose: |
e741295a MB |
25 | - "80:80" # fwd host port 80 to container port 80 (http) |
26 | - "2222:22" # fwd host port 2222 to container port 22 (ssh) | |
fbdbfba4 | 27 | |
6f99f3c2 | 28 | params: |
e56a65f6 MB |
29 | db_default_text_search_config: "pg_catalog.english" |
30 | ## Set db_shared_buffers to 1/3 of the memory you wish to allocate to postgres | |
31 | ## on 1GB install set to 128MB on a 4GB instance you may raise to 1GB | |
6f99f3c2 S |
32 | #db_shared_buffers: "256MB" |
33 | # | |
093a73b4 JA |
34 | ## Which Git revision should this container use? (default: tests-passed) |
35 | #version: tests-passed | |
fbdbfba4 | 36 | |
fbdbfba4 | 37 | env: |
3cb3d9c4 | 38 | LANG: en_US.UTF-8 |
cc0d15c5 | 39 | # DISCOURSE_DEFAULT_LOCALE: en |
40 | ||
e56a65f6 | 41 | ## TODO: How many concurrent web requests are supported? |
94153e98 | 42 | ## With 2GB we recommend 3-4 workers, with 1GB only 2 |
075922a5 | 43 | #UNICORN_WORKERS: 3 |
cc0d15c5 | 44 | |
e56a65f6 | 45 | ## TODO: List of comma delimited emails that will be made admin and developer |
c82ae929 | 46 | ## on initial signup example 'user1@example.com,user2@example.com' |
093a73b4 | 47 | DISCOURSE_DEVELOPER_EMAILS: 'me@example.com' |
cc0d15c5 | 48 | |
e56a65f6 | 49 | ## TODO: The domain name this Discourse instance will respond to |
94153e98 | 50 | DISCOURSE_HOSTNAME: 'discourse.example.com' |
cc0d15c5 | 51 | |
e56a65f6 | 52 | ## TODO: The mailserver this Discourse instance will use |
093a73b4 | 53 | DISCOURSE_SMTP_ADDRESS: smtp.example.com # (mandatory) |
075922a5 CR |
54 | #DISCOURSE_SMTP_PORT: 587 # (optional) |
55 | #DISCOURSE_SMTP_USER_NAME: user@example.com # (optional) | |
093a73b4 | 56 | #DISCOURSE_SMTP_PASSWORD: pa$$word # (optional) |
cc0d15c5 | 57 | |
1cb802ad | 58 | ## The CDN address for this Discourse instance (configured to pull) |
075922a5 | 59 | #DISCOURSE_CDN_URL: //discourse-cdn.example.com |
1fe0bcd3 | 60 | |
94153e98 | 61 | ## These containers are stateless, all data is stored in /shared |
1fe0bcd3 SS |
62 | volumes: |
63 | - volume: | |
be82e068 | 64 | host: /var/discourse/shared/standalone |
1fe0bcd3 | 65 | guest: /shared |
be82e068 S |
66 | - volume: |
67 | host: /var/discourse/shared/standalone/log/var-log | |
68 | guest: /var/log | |
b488838a | 69 | |
6b21e9cd | 70 | ## The docker manager plugin allows you to one-click upgrade Discourse |
94153e98 | 71 | ## http://discourse.example.com/admin/docker |
b488838a SS |
72 | hooks: |
73 | after_code: | |
74 | - exec: | |
75 | cd: $home/plugins | |
76 | cmd: | |
77 | - mkdir -p plugins | |
78 | - git clone https://github.com/discourse/docker_manager.git | |
e741295a | 79 | |
94153e98 | 80 | ## Remember, this is YAML syntax - you can only have one block with a name |
e741295a MB |
81 | run: |
82 | - exec: echo "Beginning of custom commands" | |
83 | ||
84 | ## If you want to configure password login for root, uncomment and change: | |
85 | #- exec: apt-get -y install whois # for mkpasswd | |
86 | ## Use only one of the following lines: | |
87 | #- exec: /usr/sbin/usermod -p 'PASSWORD_HASH' root | |
88 | #- exec: /usr/sbin/usermod -p "$(mkpasswd -m sha-256 'RAW_PASSWORD')" root | |
89 | ||
90 | ## If you want to authorized additional users, uncomment and change: | |
91 | #- exec: ssh-import-id username | |
92 | #- exec: ssh-import-id anotherusername | |
93 | ||
94 | - exec: echo "End of custom commands" | |
95 | - exec: awk -F\# '{print $1;}' ~/.ssh/authorized_keys | awk 'BEGIN { print "Authorized SSH keys for this container:"; } NF>=2 {print $NF;}' |