## 这是一个独立的 Discourse Docker 容器模板
##
## 在对此文件进行更改后,您必须重新构建
## /var/discourse/launcher rebuild app
##
## 在编辑时一定要非常小心!
## YAML 文件对空白或对齐的错误非常敏感!
## 您可以访问 http://www.yamllint.com/ 验证此文件是否需要修正。
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
## 取消下一行的注释以启用 IPv6 监听器
#- "templates/web.ipv6.template.yml"
- "templates/web.ratelimited.template.yml"
## ## 如果您希望添加 Lets Encrypt(https),请取消下面两行的注释
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
## 此容器应该暴露哪些 TCP/IP 端口?
## 如果您希望 Discourse 与其他 Web 服务器(如 Apache 或 nginx)共享端口,
## 请参阅 https://meta.discourse.org/t/17247 了解详情。
expose:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## 将 db_shared_buffers 设置为总内存的最大 25%。
## 将根据检测到的 RAM 自动设置,或者您可以手动覆盖。
db_shared_buffers: "2048"
## 可以提高排序性能,但会增加每个连接的内存使用量。
db_work_mem: "50MB"
## 此容器应该使用哪个 Git 版本?(默认值:tests-passed)
#version: tests-passed
## 最大上传大小(默认值:10m)
upload_size: 50m
env:
LC_ALL: en_US.UTF-8
LANG: en_US.UTF-8
LANGUAGE: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## 支持多少并发的 Web 请求?取决于内存和 CPU 核心。
## 将根据检测到的 CPU 自动设置,或者您可以手动覆盖。
UNICORN_WORKERS: 4
## TODO: Discourse实例将响应的域名
## 必填项。Discourse无法使用裸IP地址。
DISCOURSE_HOSTNAME: 你的域名
## 如果您希望容器以相同的方式启动,请取消注释
## 如果您希望容器使用与上面指定的相同主机名(默认为"$hostname-$config")启动,请取消注释
#DOCKER_USE_HOSTNAME: true
## TODO: 初始注册时将成为管理员和开发人员的逗号分隔的电子邮件列表
## 示例:'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: '你的邮箱'
## TODO: 用于验证新帐户并发送通知的SMTP邮件服务器
# SMTP地址、用户名和密码是必需的
# 警告:SMTP密码中的字符 '#' 可能会引起问题!
DISCOURSE_SMTP_ADDRESS: smtp.gmail.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: 你的邮箱
DISCOURSE_SMTP_PASSWORD: "你邮箱的key"
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (可选,默认值为 true)
DISCOURSE_SMTP_DOMAIN: gmail.com
DISCOURSE_NOTIFICATION_EMAIL: 你的邮箱
## 如果您添加了 Let's Encrypt 模板,请取消下面的注释以获取免费的SSL证书
LETSENCRYPT_ACCOUNT_EMAIL: 你的邮箱
## 此 Discourse 实例的 HTTP 或 HTTPS CDN 地址(配置为拉取)
## 详情请参阅 https://meta.discourse.org/t/14857
#DISCOURSE_CDN_URL: https://discourse-cdn.example.com
## 用于 IP 地址查找的 MaxMind 地理位置 IP 地址密钥
## 详情请参阅 https://meta.discourse.org/t/-/137387/23
#DISCOURSE_MAXMIND_LICENSE_KEY: 1234567890123456
## Docker容器是无状态的;所有数据都存储在 /shared 目录中
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## 插件放在这里
## 详情请见 https://meta.discourse.org/t/19157
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git # (管理器)
- exec:
cd: $home/plugins/discourse-animated-avatars
raise_on_fail: false
cmd:
- $home/plugins/discourse-animated-avatars/scripts/install.sh
## 构建后运行的任何自定义命令
run:
- exec: echo "Beginning of custom commands"
## 如果您想为首次注册设置 "发件人 "电子邮件地址,请取消注释并更改:
## 收到第一封注册电子邮件后,重新注释该行。只需运行一次.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "End of custom commands"