Статья от Discourse
Вступление
Discourse - дискуссионная площадка с открытым исходным кодом, созданная для следующего десятилетия Интернета. Мы пройдемся по всем шагам, необходимым для запуска Discourse на вашей DigitalOcean Droplet.
Предпосылки
Прежде чем мы начнем, нужно сначала настроить несколько вещей:
-
Ubuntu 14.04 Droplet (64 бит) с минимум 2 ГБ оперативной памяти. Если вам нужна помощь в этой части, то вы начнете с th this учебник. + Discourse рекомендует 1 ГБ ОЗУ для небольших сообществ и 2 ГБ ОЗУ для крупных сообществ. Также требуется файл подкачки, если вы используете 1 ГБ оперативной памяти. Несмотря на то, что своп обычно рекомендуется для систем, использующих традиционные вращающиеся жесткие диски, использование свопа с твердотельными накопителями может со временем вызвать проблемы с аппаратным ухудшением. В связи с этим мы не рекомендуем включать обмен в DigitalOcean или любом другом провайдере, который использует хранилище SSD. Это может повлиять на надежность базового оборудования для вас и ваших соседей. Следовательно, мы рекомендуем минимум 2 ГБ ОЗУ для запуска Discourse на DigitalOcean Droplet. Обратитесь к Как добавить своп в Ubuntu 14.04 для получения подробной информации об использовании свопа. + Если вам нужно улучшить производительность вашего сервера, мы рекомендуем обновить Droplet. Это приведет к лучшим результатам в целом и уменьшит вероятность возникновения проблем с оборудованием, которые могут повлиять на вашу службу.
-
Вы можете использовать IP-адрес в качестве своего домена для тестирования, но для производственного сервера у вас должен быть домен, который соответствует вашему Droplet. This учебник может помочь.
-
Пользователь без полномочий root с привилегиями sudo (Initial Server Setup с Ubuntu 14.04 объясняет, как это настроить. )
-
Бесплатная учетная запись на Mandrill и get SMTP учетные данные. Не мешало бы заранее проверить достоверность этих учетных данных, хотя вы можете использовать их впервые с помощью Discourse.
Все команды в этом руководстве должны выполняться от имени пользователя без полномочий root. Если для этой команды требуется root-доступ, ему будет предшествовать + sudo +
. Initial Server Setup с Ubuntu 14.04 объясняет, как добавлять пользователей и предоставлять им доступ sudo.
Шаг 1 - Установите Git
В этом разделе мы установим Git для загрузки исходных файлов Discourse. Git - это система управления версиями с открытым исходным кодом и системой управления исходным кодом.
Прежде чем мы начнем, настоятельно рекомендуем убедиться, что ваша система обновлена. SSH в вашу Droplet от имени пользователя root:
ssh sammy@
Выполните следующие команды на вашем Droplet для обновления системы:
sudo apt-get update
sudo apt-get upgrade
После этого установите Git, выполнив следующую команду:
sudo apt-get install git
Шаг 2 - Установите Docker
В этом разделе мы установим Docker, чтобы в Discourse была изолированная среда для работы. Docker - это проект с открытым исходным кодом, который может упаковать, отправить и запустить любое приложение в облегченном контейнере. Для получения дополнительной вводной информации о Docker см. Https://www.digitalocean.com/community/tutorials/how-to-install-and-use-docker-getting-started[thisutorial].
Docker предоставляет публичный скрипт для установки Docker:
wget -qO- https://get.docker.io/ | sh
Вам нужно добавить своего пользователя без полномочий root в группу + docker +
, чтобы иметь возможность запускать контейнер Docker от имени этого пользователя:
sudo usermod -aG docker
Вы также должны выйти и снова войти в систему под этим пользователем, чтобы включить изменения:
exit
su - sammy
Шаг 3 - Скачать дискурс
В этом разделе мы будем загружать дискурс.
Создайте папку, в которой будут находиться все файлы, связанные с Дискурсом:
sudo mkdir /var/discourse
Клонируйте official Discourse Docker Image в эту папку:
sudo git clone https://github.com/discourse/discourse_docker.git /var/discourse
Шаг 4 - Настройка дискурса
В этом разделе мы настроим ваши начальные настройки Discourse.
Переключиться в каталог:
cd /var/discourse
Скопируйте файл в папку + Containers +
как + app.yml +
:
sudo cp samples/standalone.yml containers/app.yml
Отредактируйте конфигурацию Discourse в файле + app.yml +
:
sudo nano containers/app.yml
Файл конфигурации откроется в текстовом редакторе nano.
Найдите раздел и обновите его, указав свою собственную электронную почту, домен и информацию о SMTP-сервере, как показано ниже. Отдельные строки поясняются после примера блока:
app.yml
...
env:
LANG: en_US.UTF-8
## TODO: How many concurrent web requests are supported?
## With 2GB we recommend 3-4 workers, with 1GB only 2
#UNICORN_WORKERS: 3
##
## TODO: List of comma delimited emails that will be made admin and developer
## on initial signup example '[email protected],[email protected]'
DISCOURSE_DEVELOPER_EMAILS: ''
##
## TODO: The domain name this Discourse instance will respond to
DISCOURSE_HOSTNAME: ''
##
## TODO: The mailserver this Discourse instance will use
DISCOURSE_SMTP_ADDRESS: # (mandatory)
DISCOURSE_SMTP_PORT: # (optional)
DISCOURSE_SMTP_USER_NAME: # (optional)
DISCOURSE_SMTP_PASSWORD: # (optional)
##
## The CDN address for this Discourse instance (configured to pull)
#DISCOURSE_CDN_URL: //discourse-cdn.example.com
...
Вот отдельные строки, которые необходимо изменить:
{пусто} 1) * Установить адрес электронной почты администратора *
Выберите адрес электронной почты, который вы хотите использовать для учетной записи администратора Discourse. Он может быть совершенно не связан с вашим доменом Discourse и может быть любым адресом электронной почты, который вы считаете удобным. Установите этот адрес электронной почты в строке. Этот адрес электронной почты будет назначен администратором Discourse по умолчанию, как только пользователь зарегистрируется на этом письме. Этот адрес электронной почты понадобится вам позже, когда вы настроите Discourse с помощью веб-панели управления.
DISCOURSE_DEVELOPER_EMAILS: ''
Замените на вашу электронную почту.
Настройка электронной почты разработчика необходима для создания и активации вашей первоначальной учетной записи администратора.
{пусто} 2) * Установить домен *
Установлен в . Это означает, что вы хотите, чтобы ваш форум Дискурс был доступен на. Вместо этого вы можете использовать здесь IP-адрес, если у вас еще нет домена, указывающего на ваш сервер. Только один домен (или IP) может быть указан здесь.
DISCOURSE_HOSTNAME: ''
Замените на свой домен. Имя хоста требуется для доступа к вашему экземпляру Discourse из Интернета.
{пусто} 3) * Установить учетные данные почты *
Мы рекомендуем Mandrill для вашего почтового SMTP-сервера. Get ваши учетные данные SMTP из Mandrill.
Введите свои учетные данные SMTP в строках для,, и. (Обязательно удалите символ комментария * # * в начале этих строк при необходимости.)
DISCOURSE_SMTP_ADDRESS: # (mandatory)
DISCOURSE_SMTP_PORT: # (optional)
DISCOURSE_SMTP_USER_NAME: # (optional)
DISCOURSE_SMTP_PASSWORD: # (optional)
Настройки SMTP необходимы для отправки почты из вашего экземпляра Discourse; например, для отправки электронных писем о регистрации, электронных писем для сброса пароля, уведомлений об ответах и т. д.
Возникли проблемы при настройке почтовых учетных данных? См. Дискурс Email Руководство по устранению неполадок.
Настройка почтовых учетных данных не требуется, иначе вы не сможете загрузить свой экземпляр Discourse. Учетные данные должны быть правильными, иначе вы не сможете зарегистрировать пользователей (включая администратора) для форума.
4) * Необязательно: настройки памяти (предпочтительнее для капли 1 ГБ) *
Также в разделе файла конфигурации установите * 128MB * и * 2 *, чтобы у вас было больше места в памяти.
db_shared_buffers: "128MB"
and
UNICORN_WORKERS: 2
Настройка этих параметров памяти оптимизирует производительность Discourse для капли объемом 1 ГБ.
-
ПРИМЕЧАНИЕ: * Вышеуказанные изменения являются обязательными и не должны быть пропущены, иначе у вас будет неработающий форум Дискурса.
Сохраните файл + app.yml +
и выйдите из текстового редактора.
Шаг 5 - Начальный дискурс
В этом разделе мы начнем дискурс.
Во-первых, нам нужно убедиться, что Docker может получить доступ ко всем внешним ресурсам, которые ему нужны. Откройте файл настроек Docker + / etc / default / docker
:
sudo nano /etc/default/docker
Раскомментируйте строку, чтобы Docker использовал DNS Google:
/ И т.д. / по умолчанию / Докер
...
# Use DOCKER_OPTS to modify the daemon startup options.
DOCKER_OPTS="--dns 8.8.8.8 --dns 8.8.4.4"
...
Перезапустите Docker, чтобы применить новые настройки:
sudo service docker restart
-
Примечание: * Если вы не измените настройки DNS Docker перед запуском команды начальной загрузки, вы можете получить сообщение об ошибке «Неустранимый: невозможно получить доступ» https : //github.com/SamSaffron/pups.git/ ': Не удалось разрешить хост: github.com ».
Теперь используйте процесс начальной загрузки для построения Discourse и инициализируйте его со всеми настройками, которые вы настроили в предыдущем разделе. Это также запускает контейнер Docker. Вы должны быть в каталоге:
cd /var/discourse
Бутстрап Дискурс:
sudo ./launcher bootstrap app
Выполнение этой команды займет около 8 минут, пока она конфигурирует вашу среду Discourse. (В начале этого процесса вам будет предложено сгенерировать ключ SSH; нажмите * Y * для подтверждения.)
После завершения процесса начальной загрузки запустите Discourse:
sudo ./launcher start app
Поздравляем! Теперь у вас есть свой собственный экземпляр Discourse!
Шаг 6 - Доступ к дискурсу
Посетите домен или IP-адрес (который вы указали для имени хоста Discourse ранее) в своем веб-браузере, чтобы просмотреть веб-страницу Discourse по умолчанию.
Изображение: https: //assets.digitalocean.com/articles/Install_Discourse/1.png [речь]
Если вы получили ошибку 502 Bad Gateway, попробуйте подождать минуту или две, а затем обновить, чтобы Discourse мог завершить запуск.
Шаг 7 - Регистрация и создание учетной записи администратора
Используйте кнопку * Зарегистрироваться * в правом верхнем углу страницы, чтобы зарегистрировать новую учетную запись Discourse. Вы должны использовать адрес электронной почты, который вы указали в настройках ранее. Как только вы подтвердите свою учетную запись, этой учетной записи автоматически будут предоставлены права администратора.
Изображение: HTTPS: //assets.digitalocean.com/articles/Install_Discourse/2.png [sign_up]
Как только вы зарегистрируетесь и войдете в систему, вы должны увидеть разделы «Персонал» и Admin Краткое руководство по началу работы. Он содержит следующие шаги для дальнейшей настройки и настройки вашей установки Discourse.
Вы можете получить доступ к панели администратора, посетив.
Изображение: https: //assets.digitalocean.com/articles/Install_Discourse/3.png [тире]
Если вы _ не получили письмо от регистрации и не можете зарегистрировать новую учетную запись администратора, см. Discourse https://meta.discourse.org/t/troublesho-email-on-a-new-discourse- install / 16326 [контрольный список устранения неполадок электронной почты].
Если вы по-прежнему не можете зарегистрировать новую учетную запись администратора по электронной почте, ознакомьтесь с кратким описанием Create Admin Account from Console, но, пожалуйста, обратите внимание, что у вас будет сломан сайт, пока вы не получите нормальную SMTP-почту.
Это оно! Теперь вы можете позволить пользователям зарегистрироваться и начать управлять вашим форумом Discourse.
Обновление после установки
Чтобы * обновить Discourse до последней версии *, посетите + / admin / upgrade +
и следуйте инструкциям.
Изображение: https: //assets.digitalocean.com/articles/Install_Discourse/4.png [обновление]