我可以告诉你我使用的确切过程。也许我所做的过程中有什么是错误的。我愿意完全承认我在这里犯了错误!
- 拥有域名。它是 discourse.domain.dev(域名已明显 redaction)
- 设置了电子邮件帐户。我有一个 mailgun 帐户,所以我设置了一个全新的用户用于 SMTP。电子邮件是 discourse@discourse.domain.dev
- 拥有服务器。它是最新的 Ubuntu(Jammy Jellyfish)
apt install docker.io- 无- Git 已安装
- 用户是 root
- 使用
git clone https://github.com/discourse/discourse_docker.git /var/discourse克隆 - 导航到 cd /var/discourse
- chmod 700 containers
- 仍然是 root 用户
- 运行 ./discourse-setup
- 按要求填写信息:discourse.domain.dev
- Discourse 管理员电子邮件:my@personal.email
- SMTP:smtp.eu.mailgun.org
- SMTP 端口:587
- 用户名:noreply@discourse.domain.dev
- 用户密码:REDACTED
- 通知电子邮件:noreply@discourse.domain.dev
- Let’s Encrypt 电子邮件:my@personal.email
- Maxmind ID:已填入
- Max Mind 许可证:已填入
- 验证了设置的输入数据。
- 按 Enter。
- 等待。
- 又等了一会儿
- 泡了杯茶
- 引导过程的最后一行:
+ /usr/bin/docker run --shm-size=512m -d --restart=always -e LANG=en_US.UTF-8 -e RAILS_ENV=production -e UNICORN_WORKERS=8 -e UNICORN_SIDEKIQS=1 -e RUBY_GC_HEAP_GROWTH_MAX_SLOTS=40000 -e RUBY_GC_HEAP_INIT_SLOTS=400000 -e RUBY_GC_HEAP_OLDOBJECT_LIMIT_FACTOR=1.5 -e DISCOURSE_DB_SOCKET=/var/run/postgresql -e DISCOURSE_DB_HOST= -e DISCOURSE_DB_PORT= -e LETSENCRYPT_DIR=/shared/letsencrypt -e DISCOURSE_FORCE_HTTPS=true -e LC_ALL=en_US.UTF-8 -e LANGUAGE=en_US.UTF-8 -e DISCOURSE_HOSTNAME=discourse.domain.dev -e DISCOURSE_DEVELOPER_EMAILS=my@personal.email -e DISCOURSE_SMTP_ADDRESS=smtp.eu.mailgun.org -e DISCOURSE_SMTP_PORT=587 -e DISCOURSE_SMTP_USER_NAME=noreply@discourse.domain.dev -e DISCOURSE_SMTP_PASSWORD=b7fc73b0905b5ffb5f70300f1f796000-1b5736a5-0a60075a -e DISCOURSE_SMTP_DOMAIN=discourse.example.com -e DISCOURSE_NOTIFICATION_EMAIL=noreply@discourse.domain.dev -e LETSENCRYPT_ACCOUNT_EMAIL=my@personal.email -e DISCOURSE_MAXMIND_ACCOUNT_ID=REDACTED -e DISCOURSE_MAXMIND_LICENSE_KEY=REDACTED -h devsite -e DOCKER_HOST_IP=172.17.0.1 --name app -t -p 80:80 -p 443:443 -v /var/discourse/shared/standalone:/shared -v /var/discourse/shared/standalone/log/var-log:/var/log --mac-address REDACTGED local_discourse/app /sbin/boot
REDACTEDLONGSTRING - 运行
./discourse-doctor。由于无法连接到 redis 而失败。 - 运行
./launcher rebuild app,未更改配置中的任何内容 - 它已构建。一切正常。唯一的区别是最后的 redaction 长字符串。
- 运行
./discourse-doctor。我收到了来自它的测试电子邮件。 - 网站已上线,因此我创建了管理员用户帐户。
- 点击注册
- 它说它正在发送通知电子邮件。
- 未收到。
- 通过
./discourse-docter查看,看到这个:
Discourse version at discourse.domain.dev: NOT FOUND
Discourse version at localhost: NOT FOUND - 运行
./launcher enter app - 运行
rake admin:create - 输入电子邮件:my@personal.email
- 重置密码,因为用户已存在
- 显示“您的帐户现在拥有管理员权限!”
- 登录到域上的站点
- 转到 discourse.domain.dev/logs - 看到“Sidekiq heartbeat test failed, restarting`
- 转到 discourse.domain.dev/sidekiq:看到:
- 转到查看 Enqueued
- 点击“critical”并展开内容,再次看到“to_address”=nil
停止,并寻求帮助。
这是今天在全新机器上完全重做。这些是我之前使用的确切步骤。请,如果我搞砸了,请告诉我!![]()
系统设置:
- CPU:4 核
- RAM:16 GB
- 操作系统:Ubuntu LTS 64 位 24.04
- 存储:NVMe 500G
- Postgres 版本:13.16-1
- Redis:7.0.7
- Ruby:3.3.4


