[БЛОГИ] Создаем собственный блог на основе блокчейна голоса при помощи готового кода Гласность от @ontofractal [УЧЕБНИК]
Решил написать мини-учебник с более подробным руководством прямо по мере собственного тестирования написанной "Гласности" от @ontofractal.
Требования на старте
- Сервер с предустановленной Ubuntu (у меня была 16.04.2)
- Домен прикреплённый к серверу, если вы хотите сделать блог доступным не только по IP
- На сервере ничего не должно занимать стандартный, 80 порт или вы должны уметь настроивать апач на работу с виртуальными доменами (поддоменами) и папками самостоятельно
Процесс установки Гласности
Шаг 1. Обновление сервера
Предположим, что сервер и домен у вас уже настроены, но больше - ничего. Для начала, обновим все пакеты до самых актуальных версий:
sudo apt update
sudo apt upgrade
Соглашаемся, ждём обновления. Если деплой свежий (16.04.2), обновление много времени не замёт.
Шаг 2. Установка Docker.
Так как деплой Гласности подготовлен в виде докер-контейнера (это очень удобно и грамотно, кстати), нам нужно установить ПО Docker. Для этого:
- Добавляем GPG-ключ официального репозитория Docker
sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D
- Добавляем репозиторий Docker
sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main'
- Обновим список пакетов
sudo apt-get update
- Установим Docker
sudo apt-get install -y docker-engine
Теперь давайте проверим, что Docker успешно установился и запустился:
sudo systemctl status docker
В ответ должно отобразиться:
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2016-05-01 06:53:52 CDT; 1 weeks 3 days ago
Docs: https://docs.docker.com
Main PID: 749 (docker)
Для выхода из просмотра состояния сервиса docker в systemd просто нажмите клавишу Q (quit).
Шаг 3. Создание вашего файла конфигурации.
Заходите на pastebin и постите вот это, настроив под себя:
{
"authors": [{
"account_name": "sxiii",
"tags": {
"blacklist": ["bm-open"],
"whitelist": []
}
}, {
"account_name": "glasnost",
"tags": {
"blacklist": [],
"whitelist": []
}
}
],
"about_blog_permlink": "glasnost",
"about_blog_author": "sxiii",
"source_blockchain": "golos"
}
Когда вы зальете ваш конфиг на гитхаб, нажмите на кнопку RAW вверху-справа. Откроется файл конфига в сыром виде. Скопируйте на него ссылку. Она понадобится вам в шаге 6.
Шаг 4. Запуск контейнера Гласности
docker run -it -p 80:80 -e "GLASNOST_CONFIG_URL=ССЫЛКА_НА_ФАЙЛ_КОНФИГУРАЦИИ" --restart on-failure:10 ontofractal/glasnost:latest
Не забудьте заменить ССЫЛКУ_НА_ФАЙЛ_КОНФИГУРАЦИИ
на, собственно, ссылку на файл конфигурации, ваш. Его можно заранее захостить в pastebin.com либо gists.github.com. Ссылка нужна в RAW варианте, т.е. чтобы сразу открывался файл без какой-либо веб-страницы пастбина или гитхаба, например у меня это: https://pastebin.com/raw/eFp39YJL
В общем-то это всё. Теперь можете заходить на адрес вашего сервера. Вы должны увидеть ваш блог (или блог авторов, которых вы указали в конфиге).
Дополнительную информацию читайте в профиле Гласности.
Текущие баги
На данный момент хотелось бы выделить различия платформ в некоторых моментах.
- Не работают цитаты
>
- Не работают изображения без
![]()
(и по этой же причине не отображаются превью-картинки к некоторым постам)
- Ширина колонки не соответствует ширине колонки в Голосе:
Хотелось бы помочь исправить эти проблемы.
Тестовый сервер SXIII
P.S. Возможно придётся также выключить IPV6 на сервере, если не сможете на него зайти. Тогда просто sudo nano /etc/sysctl.conf
и в самый низ дописывайте:
# IPv6 disabled
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
И чтоб не перезагружать сервер, сделайте просто sudo sysctl -p
.
С вами, как всегда, Den Ivanov aka SXIII
Айтишник-линуксоид из Ростова-на-Дону.