Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >在 Ubuntu 上安装 Discourse 开发环境

在 Ubuntu 上安装 Discourse 开发环境

原创
作者头像
HoneyMoose
发布于 2022-12-10 14:13:51
发布于 2022-12-10 14:13:51
2.5K00
代码可运行
举报
文章被收录于专栏:CWIKIUSCWIKIUS
运行总次数:0
代码可运行

 本指南只针对 Discourse 开发环境的配置,如果你需要在生产环境中安装 Discourse ,请访问页面:Install Discourse in production with the official, supported instructions - sysadmin - Discourse Meta 中的内容。

 有关开发环境的设置英文原文,请参考:Set up a local Discourse Development Environment? - developers - Discourse Meta 页面中的内容。


本文只针对在 Ubuntu 环境下的开发进行设置,因为 Discourse 是基于 Ruby 开发的,Ruby 的开发环境在 Ubuntu 下设置最为简便,所以 Discourse 的生产环境运行也是是官方建议在 Ubuntu 下运行的,虽然我们的社区是运行在 REHL 环境下也没有问题,因为使用了 Docker 的容器,但如果你想对 Discourse 进行开发的话,建议还是使用 Ubuntu 环境。

如果你使用的是 Windows 系统的话,你需要安装 WSL 环境。WSL 是 Windows 提供的一个基于 Ubuntu 的环境,主要用于解决 Windows 下开发Linux 应用的问题。

本文章假设你还没有在 Ubuntu 环境中安装 Ruby/Rails/Postgres/Redis 环境,让我们开始开发环境的配置吧!

尽管这个开发指南是假定你使用的是 Ubuntu 开发环境,但是任何基于 Debian 发行的 Linux 系统都是可以使用的。

本开发指南在 Ubuntu 18 上验证过不需要任何其他的步骤就可以完成开发环境设置。

 基于 Ubuntu/Debian 开发环境的使用不同,你可能在对 Ubuntu/Debian 进行开发的时候需要参考下下面的信息:

 有关在 Ubuntu 20.04 及其后续版本上安装 Discourse 测试环境 有关在 Ubuntu 低于 20.04版本上安装 Discourse 测试环境

根据我们进行测试的经验来看,Ubuntu 22 的版本中可能有无法编译和包找不到的情况,我们还只在 20.04 上完成本地开发环境的设置。

安装 Discourse 依赖

作为一般的用户,可以在控制台中运行下面的命令: this script 。上面的命令将会帮助你在本地的开发环境中快速设置 Rails。

运行的命令为:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bash <(wget -qO- https://raw.githubusercontent.com/discourse/install-rails/master/linux)

上面的命令将会在你的本地系统中安装下面的包:

如果在你的本地操作系统中已经安装了一些软件,或者你不希望安装所有的软件的话,请参考 script 中的内容,然后选择你不希望当前安装的软件。上面的安装脚本将会安装所有 Discourse 运行需要的软件,这些软件将会为 Discourse 的运行提供支持。

当你完成安装所有的 Discourse 依赖后,我们就可以对 Discourse 进行安装了。

上图显示的是在 Ubuntu 中安装的界面,整个软件安装的过程还是比较耗时的,可能需要5 分钟以上,与你使用的系统有关。

克隆(Clone)Discourse

克隆 Discourse 到 ~/discourse 文件夹中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
git clone https://github.com/discourse/discourse.git ~/discourse

~ 定义的是当前的 Home 文件夹,这个意思是 Discourse 的程序将会复制到你的 home 文件夹下。

因为我们使用的是 WSL 子系统,因此我们实际上是把文件克隆到我的 D 盘下了。

设置(Setup) Database

创建一个 与你 ubuntu 系统用户名相同的用户

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo -u postgres createuser -s "$USER"

如果你在运行上面的命令的时候提示错误:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
createuser: error: could not connect to database template1: could not connect to server: No such file or directory

请参考页面:Discourse 开发环境安装 PGSQL 提示错误 2 中的内容。

启动 Discourse

切换到你的 Discourse 克隆目录中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd ~/discourse

安装所需要的 gems

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
source ~/.bashrc
bundle install

同时安装所需要的 JS 依赖

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
yarn install

当到这一步为止,你已经安装好所有需要的 gems 和依赖,请尝试运行下面的命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bundle exec rake db:create 
bundle exec rake db:migrate
RAILS_ENV=test bundle exec rake db:create db:migrate

如果在运行的时候出现错误,请仓库: Discourse 开发环境安装运行 bundle exec rake db:create 错误 中的内容。

尝试运行下面的命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bundle exec rake autospec

你的项目应该会通过所有的测试。

这个测试非常耗时,可以不做这个的,要不然估计几个小时就出去了。

运行下面的命令来启动服务器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bundle exec rails server

当你完成上面的安装步骤后,你应该可以通过 http://localhost:3000 访问你本地安装的 Discourse。

从 Discourse 2.5+ 开始, 针对本地的开发环境 EmberCLI 变成必须的选项了。:

如果你直接通过界面访问 3000 端口的话,会得到下面的提示界面:

在你的控制台终端中,进入 (cd ~/discourse) 文件夹,然后运行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bin/ember-cli

你应该可以通过访问t http://localhost:4200 地址来查看你的本地 Discourse 安装。

 需要注意的是这 2 个服务器都需要同时启动,ember-cli 是通过反向代理的方式访问 3000 的。

创建一个新的 Admin 账号

在对开发环境进行登录之前,需要创建一个管理员账号,运行下面的命令进行创建:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
RAILS_ENV=development bundle exec rake admin:create

请按照命令行的提示来创建这个管理员账号。

需要输入的信息为电子邮件地址和密码。

配置邮件

运行 MailHog:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mailhog

当你完成上面的所有步骤后,你的 Discourse 本地开发环境就已经配置好了,你现在就可以以管理员账号来登录 Discourse 了。

如果你想对 Discourse 开发插件的话,请参考: Developing Discourse Plugins - Part 1 - Create a basic plugin - developers - Discourse Meta 页面中的内容指南。

https://www.ossez.com/t/ubuntu-discourse/14239


原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Discourse 本地开发环境时候出现代理错误
在本地开发环境的时候出现错误:# Discourse Ember CLI Proxy ErrorFetchError: request to http://127.0.0.1:3000/ failed, reason: connect ECONNREFUSED 127.0.0.1:3000 at ClientRequest. (file:///mnt/d/WorkDir/Repository/Discource-C/discourse/app/assets/javascripts/node_modul
HoneyMoose
2022/12/10
7640
Discourse 本地开发环境时候出现代理错误
Gitlab CE 8.1.3 安装手册(Debian/Ubuntu)
安装概述 Gitlab的安装过程主要包括以下组件的配置: 安装软件包及解决依赖项 Ruby环境 Go 系统用户 数据库(Mysql/Postgresql) Redis Gitlab-CE Nginx 1.安装软件包及解决依赖项 Debian系统默认是没有sudo的。确保你的系统已经更新到最新状态,并安装sudo。 #run as root! apt-get update -y apt-get upgrade -y apt-get install sudo -y 1.1安装系统必要的软件包: sudo
小小科
2018/05/03
1.7K0
如何在Ubuntu 16.04上安装和配置Redmine
Redmine是一个用于项目管理的Web应用程序,它允许用户灵活地管理项目,同时提供强大的追踪工具和众多的插件库。这个免费的开源解决方案是付费项目管理工具的替代方案之一,并且它提供了对wiki,论坛,日历和数据可视化工具的支持。
魔法少女伊莉雅
2018/09/04
3.1K0
如何在Ubuntu 16.04上安装和配置Redmine
在Ubuntu 14.04上安装GitLab(Trusty Tahr)
GitLab是一个基于Ruby on Rails的免费git存储库管理应用程序。假如您想托管自己的git存储库,这是一个很好的替代方案,因为在编写私有代码或则闭源软件的时候,使用第三方托管并不总是最佳选择。
白加黑大人
2018/09/07
2.2K0
在Ubuntu 14.04上安装GitLab(Trusty Tahr)
CentOS+Redmine:5步搭建企业级项目管理系统,告别项目混乱!
在当今快节奏的开发环境中,团队协作面临着诸多挑战:任务分配不明确、进度跟踪困难、沟通成本高、版本控制混乱...这些问题严重影响开发效率,导致项目延期、质量下降甚至失败。
释然IT杂谈
2025/03/12
3220
CentOS+Redmine:5步搭建企业级项目管理系统,告别项目混乱!
linux c++开发环境_玩转 WSL 在 Win10 上打造 Linux 开发环境
WSL 是 Windows Subsystem for Linux 的简称, 可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生虚拟机开销。
用户7886150
2021/02/15
2.6K0
如何在Ubuntu 14.04上使用MySQL和Ruby on Rails应用程序
Ruby on Rails使用sqlite3作为其默认数据库,在许多情况下效果很好,但可能不适合您的应用程序。如果您的应用程序需要客户端/服务器SQL数据库(如PostgreSQL或MySQL)的可伸缩性,集中化和控制(或任何其他功能),则需要执行一些额外的步骤才能启动并运行它。
信姜缘
2018/10/22
5.1K0
如何在Ubuntu 14.04上使用Unicorn和Nginx部署Rails应用程序
当您准备部署Ruby on Rails应用程序时,需要考虑许多有效的设置。本教程将帮助您部署Ruby 在 Rails应用程序中的生产环境,使用PostgreSQL作为数据库,在Ubuntu 14.04上使用Unicorn和Nginx。
丰一川
2018/09/28
4.4K0
Canvas LMS集成Analysis插件
Canvas官方Production Start安装的平台并不包括分析模块,在Canvas开源库中看到了Canvas Analytics ,集成过程如下。
geekfly
2022/04/24
1.7K0
Canvas LMS集成Analysis插件
virtualbox ubuntu 下面安装 redmine
然后在 vb 中配置安装 ubuntu ,这里需要注意的是,把网络类型改为 桥接。
零式的天空
2022/03/22
1.1K0
Discourse 云平台安装
本文档是根据 discourse/INSTALL-cloud.md at main · discourse/discourse · GitHub 页面中的内容进行翻译的。
HoneyMoose
2021/08/01
1.3K0
Discourse 云平台安装
原 在已安装Apache和MySQL的Ub
一 、 首先更新系统和软件包 1 . 更新软件包 # run as root! apt-get update -y apt-get upgrade -y apt-get install sudo -y 2 . 配置编辑器 # Install vim and set as default editor sudo apt-get install -y vim sudo update-alternatives --set editor /usr/bin/vim.basic 3 . 安装ruby curl -L 
霡霂
2018/06/04
8450
如何在 Ubuntu 20.04 上安装 Ruby
本文最先发布在: https://www.itcoder.tech/posts/how-to-install-ruby-on-ubuntu-20-04/
雪梦科技
2020/05/26
5K1
如何在 Ubuntu 20.04 上安装 Ruby
如何在Ubuntu 14.04上使用PostgreSQL和Ruby on Rails应用程序
Ruby on Rails使用sqlite3作为其默认数据库,在许多情况下效果很好,但可能不适合您的应用程序。如果您的应用程序需要客户端/服务器SQL数据库(如PostgreSQL或MySQL)提供的可伸缩性,集中化和控制(或任何其他功能),则需要执行一些其他步骤才能启动并运行它。
温浪
2018/10/22
3.6K0
项目管理和缺陷跟踪系统 Redmine
Redmine 是用 Ruby 开发的基于 web 的项目管理软件,是用 ROR 框架开发的一套跨平台项目管理系统,支持多种数据库,有不少自己独特的功能,例如提供 wiki、新闻台等。还可以集成其他版本管理系统和 BUG 跟踪系统;例如 SVN、CVS、TD 等。这种 Web 形式的项目管理系统通过项目(Project)的形式把成员、任务(问题)、文档、讨论以及各种形式的资源组织在一起,项目成员参与更新任务、文档等内容来推动项目。
BUG弄潮儿
2022/04/15
2.4K0
项目管理和缺陷跟踪系统 Redmine
如何在Ubuntu 14.04上使用Puma和Nginx部署Rails应用程序
当您准备部署Ruby on Rails应用程序时,需要考虑许多有效的设置。本教程将帮助您部署Ruby on Rails应用程序的生产环境,使用PostgreSQL作为数据库,在Ubuntu 14.04上使用Puma和Nginx。
宇cccc
2018/09/26
5.6K0
开发项目管理工具redmine 原
基于上面的多种特性,在项目管理工作中,如任务分配、任务跟踪、项目权限管理等等带来很大的便捷性,使得工作进度、质量更加可控。春雨在使用Redmine时集成了ldap,并以此对外部员工(toh、合作方)和内部员工做了区分,同时Redmine对用户分配了四种角色(超级管理员、管理人员、开发人员、报告人员),而且还可以配置用户组,如此一来对于项目权限管理更加便捷。更重要的一点是日常工作中所有工作内容的申请和交接都通过Redmine和email来操作,这样所有工作的开展都有据可依,也符合等保3的考核要求。
阿dai学长
2019/04/03
10.3K3
开发项目管理工具redmine
                                                                            原
笔记整理-Ruby语言
CREATE DATABASE redmine CHARACTER SET utf8;
古道无仙
2021/03/11
2.3K0
用GitLab搭建自己的私有GitHub
Gitlab是一个用Ruby on Rails开发的开源项目管理程序,可以通过WEB界面进行访问公开的或者私人项目。它和Github有类似的功能,能够浏览源代码,管理缺陷和注释。
知忆
2021/06/08
1.2K0
在 Windows 上做开发还能这么爽?WSL + VS Code + Docker Desktop 你值得有用
DevOps 是为了提升组织效率,但我们也不要忽略了个人效率的提升,打造一套舒适并适合自己的开发环境绝对会让你的效率拉满… 今天要介绍的开发神器是 WSL 2(Windows Subsystem for Linux)。
Peter Shen
2022/11/30
3.1K0
在 Windows 上做开发还能这么爽?WSL + VS Code + Docker Desktop 你值得有用
推荐阅读
相关推荐
Discourse 本地开发环境时候出现代理错误
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验