喜欢它的工作速度!我真的很喜欢 Discourse。
再次感谢!@merefield。
编辑:找到了 Docker 镜像的逐步说明:
https://hub.docker.com/r/bitnami/discourse
获取 Bitnami Discourse Docker 镜像的推荐方法是从 Docker Hub Registry 拉取预构建的镜像。
docker pull bitnami/discourse:latest
要使用特定版本,您可以拉取带版本标签的镜像。您可以在 Docker Hub Registry 中查看 可用版本列表。
docker pull bitnami/discourse:[TAG]
如果您愿意,也可以通过克隆存储库、进入包含 Dockerfile 的目录并执行 docker build 命令来自己构建镜像。请记住在下面的示例命令中用正确的值替换 APP、VERSION 和 OPERATING-SYSTEM 路径占位符。
git clone https://github.com/bitnami/containers.git
cd bitnami/APP/VERSION/OPERATING-SYSTEM
docker build -t bitnami/APP:latest .
如何使用此镜像
Discourse 需要访问 PostgreSQL 数据库来存储信息。我们将使用 Bitnami PostgreSQL Docker 镜像 来满足数据库需求。
使用 Docker 命令行
步骤 1:创建网络
docker network create discourse-network
步骤 2:创建用于 PostgreSQL 持久化的卷并创建 PostgreSQL 容器
$ docker volume create --name postgresql_data
docker run -d --name postgresql \
--env ALLOW_EMPTY_PASSWORD=yes \
--env POSTGRESQL_USERNAME=bn_discourse \
--env POSTGRESQL_PASSWORD=bitnami123 \
--env POSTGRESQL_DATABASE=bitnami_discourse \
--network discourse-network \
--volume postgresql_data:/bitnami/postgresql \
bitnami/postgresql:latest
步骤 3:创建用于 Redis 持久化的卷并创建 Redis 容器
$ docker volume create --name redis_data
docker run -d --name redis \
--env ALLOW_EMPTY_PASSWORD=yes \
--network discourse-network \
--volume redis_data:/bitnami/redis \
bitnami/redis:latest
步骤 4:创建用于 Discourse 持久化的卷并启动容器
$ docker volume create --name discourse_data
docker run -d --name discourse \
-p 8080:8080 -p 8443:8443 \
--env ALLOW_EMPTY_PASSWORD=yes \
--env DISCOURSE_DATABASE_USER=bn_discourse \
--env DISCOURSE_DATABASE_PASSWORD=bitnami123 \
--env DISCOURSE_DATABASE_NAME=bitnami_discourse \
--env DISCOURSE_HOST=www.example.com \
--network discourse-network \
--volume discourse_data:/bitnami/discourse \
bitnami/discourse:latest
步骤 5:启动 Sidekiq 容器
docker run -d --name sidekiq \
--network discourse-network \
--volume discourse_data:/bitnami/discourse \
bitnami/discourse:latest /opt/bitnami/scripts/discourse-sidekiq/run.sh
在 http://your-ip/ 访问您的应用程序
使用 Docker Compose 运行应用程序
curl -sSL https://raw.githubusercontent.com/bitnami/containers/main/bitnami/discourse/docker-compose.yml > docker-compose.yml
docker-compose up -d
请注意,此文件未经内部测试。因此,我们建议仅将其用于开发或测试目的。对于生产就绪的部署,我们强烈建议使用其关联的 Bitnami Helm Chart。
如果您在 docker-compose.yaml 文件中发现任何问题,请随时报告或通过遵循我们的 贡献指南 进行修复。
Discourse 故障排除
如果您需要运行 Discourse 管理命令,例如 从控制台创建管理员帐户,您可以通过在容器内执行 shell 并使用正确的环境变量来完成。
cd /opt/bitnami/discourse
RAILS_ENV=production bundle exec rake admin:create