0chan 11159a5c4c | ||
---|---|---|
docker | ||
nginx | ||
.env.example | ||
.gitignore | ||
README.md | ||
docker-compose.yml |
README.md
Требования
- Debian 11 / Ubuntu 22.04
- Установленные nginx, docker и docker compose
- 1 GB RAM + хотя бы пару ядер CPU для нормальной работы
- аккаунт на cloudflare
Установка
- Создайте не рутового пользователя у себя на сервере
adduser nullchan && usermod -a -G sudo nullchan && usermod -aG docker nullchan && su nullchan
- Склонируйте этот репозиторий в любую папку (например,
/home/nullchan/instant-0chan-docker
) - Склонируйте инстант в папку app (например,
/home/nullchan/instant-0chan-docker/app
) - Зайдите в папку instant-0chan-docker (
cd instant-0chan-docker
) - Скопируйте .env.example с новым именем .env (
cp .env.example .env
) - Скопируйте конфиг nginx (не забудьте указать в нем свой домен вместо 0chan.tld)
sudo cp nginx/0chan.tld.conf /etc/nginx/sites-available/
- Поменяйте
server_name
в скопированном файле и создайте симлинк для активации домена (sudo ln -s /etc/nginx/sites-available/0chan.tld.conf /etc/nginx/sites-enabled/
) - Проверим что ничего не поломалось (
sudo nginx -t
) - Если всё ок, то перезагружаем nginx (
sudo nginx -s reload
) - Возвращаемся к файлу
.env
- Обязательно поменяйте
MARIADB_PASSWORD
иMARIADB_ROOT_PASSWORD
(иначе я лично приду и снесу вам базу) - Можно запустить
docker compose build && docker compose up -d
- Когда всё установится, вам вернется управление терминалом. Вводим команду
docker ps
чтобы удостовериться что всё поднялось. Запоминаем хэш контейнераkusaba-docker-app
, например у меня онcd9ea837d6b4
- Выполняем команду
docker exec -it cd9ea837d6b4 bash
(с вашим айди контейнера) cp app/instance-config.php.example cp app/instance-config.php
- Отредактируем
instance-config.php
, установим настройки базы (обратите внимание что в качестве хоста используем не localhost аmariadb
) mkdir -p /var/www/dwoo/templates_c
на всякий случайchown -R www-data:www-data /var/www/app
, это необходимо чтобы были права на создание кэша шаблонов и аплоада картинок- Ctrl+D, чтобы выйти из контейнера
- Выполняем установку инстанта по инструкции самого инстанта
- Подключаем сайт в настройках dns cloudflare
- Устанавливаем certbot по инструкции с официального сайта
- Выполняем
sudo certbot --nginx
, следуем инструкции, получаем сертификат для нашего сайта
Если у вас что-то не получилось, отпишитесь в треде https://0chan.plus/0/res/1799.html