Доступ к Bar Assistant
- Веб-интерфейс:
https://<SERVER_IP> - REST API:
https://<SERVER_IP>/bar - Meilisearch:
https://<SERVER_IP>/search - Предупреждение SSL в браузере ожидаемо, так как используется самоподписанный сертификат.
Первоначальная настройка
1. Откройте следующий URL в браузере: https://<SERVER_IP>
2. Нажмите Register.
3. Создайте первую учётную запись пользователя.
4. После завершения регистрации отключите публичную регистрацию, отредактировав:
vim /root/barassistant/docker-compose.yml
Измените ALLOW_REGISTRATION: "true" to ALLOW_REGISTRATION: "false".
Примените изменение:
cd /root/barassistant
docker compose up -d
Важные файлы и директории
- Путь установки:
/root/barassistant - Файл Compose:
/root/barassistant/docker-compose.yml - Файл среды:
/root/barassistant/.env - Конфигурация Nginx:
/etc/nginx/sites-available/barassistant - Сертификат SSL:
/etc/nginx/ssl/barassistant.crt - SSL-ключ:
/etc/nginx/ssl/barassistant.key - Каталог данных Bar:
/var/lib/docker/volumes/barassistant_bar_data/_data - Каталог данных Meilisearch:
/var/lib/docker/volumes/barassistant_meilisearch_data/_data
Управление Bar Assistant
Просмотр запущенных контейнеров:
docker compose -f /root/barassistant/docker-compose.yml ps
Перезапустить все контейнеры:
docker compose -f /root/barassistant/docker-compose.yml restart
Следите за логами приложения:
docker compose -f /root/barassistant/docker-compose.yml logs -f
Остановите приложение:
docker compose -f /root/barassistant/docker-compose.yml down
Запустите приложение:
docker compose -f /root/barassistant/docker-compose.yml up -d
Управление Nginx
Проверить статус:
systemctl status nginx
Перезапустить Nginx:
systemctl restart nginx
Перезагрузить Nginx:
systemctl reload nginx
Проверьте конфигурацию:
nginx -t
Включение SSL с доменом
1. Направьте ваш домен на IP сервера.
2. Откройте конфиг NGINX и замените оба server_name _; с вашим доменом (server_name <yourdomain.com>) для блоков HTTP (порт 80) и HTTPS (порт 443):
vim /etc/nginx/sites-available/barassistant
3. Установите Certbot:
apt install -y certbot python3-certbot-nginx
4. Выполните следующую команду для создания действующего сертификата Let's Encrypt:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
5. Замените пути SSL в конфиге NGINX:
vim /etc/nginx/sites-available/barassistant
# Before:
# ssl_certificate /etc/nginx/ssl/barassistant.crt;
# ssl_certificate_key /etc/nginx/ssl/barassistant.key;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
6. Перезагрузите Nginx для применения изменений:
systemctl reload nginx
7. Отредактируйте /root/barassistant/.env и замените IP сервера в API_URL и MEILISEARCH_URL with your domain:
API_URL=https://yourdomain.com/bar
MEILISEARCH_URL=https://yourdomain.com/search
8. Пересоздайте сервисы:
cd /root/barassistant
docker compose up -d
9. Откройте браузер и перейдите по адресу: https://yourdomain.com
Проверка обратного прокси
- Откройте
https://yourdomain.com/bar. Вы должны увидеть: "This is your Bar Assistant instance." - Откройте
https://yourdomain.com/bar/docs. Вы должны увидеть документацию Swagger API. - Откройте
https://yourdomain.com/bar/api/server/version. Вы должны получить JSON-ответ с версией сервера, а не ошибку "Resource not found".