...Учись у меня трудам и доблести, сын мой, Быть счастливым учись у других (Вергилий).

Установить Gollum Wiki на Ubuntu

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5,00 из 5)
Загрузка...
4 января 2017
Установить Gollum Wiki на Ubuntu

На этом уроке мы расскажем, как установить Gollum Wiki на Ubuntu 16.04 VPS с Puma и Nginx. Gollum является простой системой вики с открытым исходным кодом построеной на вершине Git. Gollum Wiki представляет собой хранилище Git со страницами, организованных в каталогах. Это руководство должно работать на других системах на основе Linux VPS, так же хорошо, но была испытана и написана для Ubuntu 16,04 VPS.

Войдите на свой VPS через SSH

ssh master@vps

Обновите систему и установите необходимые пакеты

[master]# sudo apt-get update && sudo apt-get -y upgrade
[master]# sudo apt-get install git nano curl libicu-dev

Пользователь в Gollum

Создание нового пользователя системы для Gollum.

[master]# sudo adduser --home /opt/gollum --shell /bin/bash --gecos 'Gollum Wiki software' gollum
[master]# sudo install -d -m 755 -o gollum -g gollum /opt/gollum
[master]# sudo usermod -a -G sudo gollum
[master]# sudo su - gollum

Установка Ruby с помощью RVM

Следующие команды запускаются от имени пользователя Gollum.

[gollum]# cd
[gollum]# curl -sSL https://rvm.io/mpapis.asc | gpg --import -
[gollum]# curl -sSL https://get.rvm.io | bash -s stable --ruby

Для того, чтобы начать использовать RVM, выполните следующую команду:

[gollum]# source ~/.rvm/scripts/rvm

Текущая стабильная версия Ruby, является версия 2.3.1

[gollum]# rvm install ruby-2.3.1

Для того, чтобы проверить, что всё сделано правильно, используйте команду ruby --version.
Вывод должен быть похож на следующий:

[gollum]# ruby --version
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux]

Установка Gollum

Мы установим Gollum и Puma через RubyGems, с помощью следующей команды:

[gollum]# gem install --no-ri --no-rdoc gollum puma

Создайте новый, локальный репозиторий Git:

[gollum]# git init ~/gitrepo

Создание службы Systemd

Чтобы создать новую услугу Systemd для Gollum, откройте редактор по вашему выбору и создайте новый файл:

[master]$ sudo nano /etc/systemd/system/gollum.service

и добавьте следующие строки:

[Unit]
Description=gollum service
After=syslog.target
After=network.target

[Service]
User=gollum
ExecStart=/opt/gollum/.rvm/wrappers/ruby-2.3.1/gollum --live-preview /opt/gollum/gitrepo
Restart=on-abort

[Install]
WantedBy=multi-user.target

Запустите сервер Gollum и установите его на автоматический запуск при загрузке:

[master]$ sudo systemctl enable gollum.service
[master]$ sudo systemctl start gollum.service

Чтобы проверить работу сервиса, выполните systemctl status gollum.service и вы должны увидеть что-то, вроде этого:

● gollum.service
   Loaded: loaded (/etc/systemd/system/gollum.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2017-01-02 08:30:34 UTC; 7s ago
 Main PID: 10737 (ruby)
   CGroup: /system.slice/gollum.service
           └─10737 puma 3.6.0 (tcp://0.0.0.0:4567) [/]

Установка и настройка Nginx

Чтобы установить последнюю стабильную версию Nginx, доступных на репозиториях Ubuntu, выполните следующую команду:

[master]$ sudo apt-get -y install nginx

Генерация самоподписанного сертификата SSL:

[master]$ sudo mkdir -p /etc/nginx/ssl
[master]$ cd /etc/nginx/ssl
[master]$ sudo openssl genrsa -des3 -passout pass:x -out gollum.pass.key 2048
[master]$ sudo openssl rsa -passin pass:x -in gollum.pass.key -out gollum.key
[master]$ sudo rm gollum.pass.key
[master]$ sudo openssl req -new -key gollum.key -out gollum.csr
[master]$ sudo openssl x509 -req -days 365 -in gollum.csr -signkey gollum.key -out gollum.crt
[master]$ sudo openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048

Если вы не хотите получать предупреждения, связанные с самоподписанными SSL сертификаты, вы можете настроить сертификат доверенного SSL здесь.

Затем создайте новый блок сервера Nginx:

[master]$ sudo nano /etc/nginx/sites-available/myGollumWiki.ru
server {
    listen 443 ssl http2;
    server_name myGollumWiki.ru;

    location / {
        proxy_pass              http://127.0.0.1:4567;
        proxy_set_header        Host $host;
        proxy_set_header        X-Real-IP $remote_addr;
        proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_connect_timeout   150;
        proxy_send_timeout      100;
        proxy_read_timeout      100;
        proxy_buffers           4 32k;
        client_max_body_size    500m;
        client_body_buffer_size 128k;
    }

    ssl on;
    ssl_certificate     /etc/nginx/ssl/gollum.ru.crt;
    ssl_certificate_key /etc/nginx/ssl/gollum.ru.key;
    ssl_dhparam  /etc/nginx/ssl/dhparam.pem;

    ssl_session_timeout 5m;
    ssl_ciphers  EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
    ssl_protocols TLSv1.2;
    ssl_prefer_server_ciphers on;

    access_log  /var/log/nginx/myGollumWiki.ru.access.log;
    error_log   /var/log/nginx/myGollumWiki.ru.error.log;

}

server {
    listen      80;
    server_name myGollumWiki.ru;

    add_header Strict-Transport-Security max-age=2592000;
    rewrite ^ https://$server_name$request_uri? permanent;
}

Активирeqnt блок сервера, создав символическую ссылку:

[master]$ sudo ln -s /etc/nginx/sites-available/myGollumWiki.ru /etc/nginx/sites-enabled/myGollumWiki.ru

Проверьте конфигурацию Nginx и перезапуск Nginx:

[master]$ sudo nginx -t
[master]$ sudo systemctl start nginx

Откройте http://myGollumWiki.ru/ в вашем любимом веб-браузере и создайте свою первую страницу Gollum.

Вот и все. Вы успешно установили Gollum на вашем Ubuntu 16,04 VPS. Для получения дополнительных сведений о том, как управлять установкой Gollum, пожалуйста, обратитесь к Gollum Wiki.

PS . Если вам понравился этот пост, поделитесь им с друзьями в социальных сетях с помощью кнопок или просто оставьте комментарий ниже.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Просмотров: 64

Если статья понравилась, то поделитесь ей в социальных сетях:

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close