Доступ
- Откройте браузер:
https://<SERVER-IP> - Примите предупреждение браузера о сертификате, так как установка использует самоподписанный сертификат TLS.
- Требуется аутентификация (всплывающее окно Basic Auth)
- Метод аутентификации: HTTP Basic Auth
- Учётные данные для входа безопасно хранятся в:
/root/.cloudzy-creds
Добавление файлов
- Поместите файлы и папки, которыми хотите поделиться, в:
/root/directory-lister/files - Directory Lister читает этот каталог напрямую, поэтому новые файлы появляются автоматически без перезапуска приложения.
Важные файлы и директории
- Путь установки:
/root/directory-lister - Отображаемые файлы:
/root/directory-lister/files - Файл Docker Compose:
/root/directory-lister/docker-compose.yml - Файл среды:
/root/directory-lister/.env - Учётные данные:
/root/directory-lister/.credentials - Конфигурация Nginx:
/etc/nginx/sites-available/directory-lister - Файл Basic Auth:
/etc/nginx/.htpasswd-directory-lister - Сертификат TLS:
/etc/nginx/ssl/directory-lister.crt - Закрытый ключ TLS:
/etc/nginx/ssl/directory-lister.key
Управление сервисами
Просмотр запущенных контейнеров:
docker compose -f /root/directory-lister/docker-compose.yml ps
Перезапустить Directory Lister:
docker compose -f /root/directory-lister/docker-compose.yml restart
Просмотр логов Directory Lister:
cd /root/directory-lister && docker compose logs -f
Остановить Directory Lister:
docker compose -f /root/directory-lister/docker-compose.yml stop
Запустить Directory Lister:
docker compose -f /root/directory-lister/docker-compose.yml start
Пересоздать Directory Lister:
docker compose -f /root/directory-lister/docker-compose.yml up -d
Проверить статус Nginx:
systemctl status nginx
Перезапустить Nginx:
systemctl restart nginx
Перезагрузить Nginx:
systemctl reload nginx
Проверьте конфигурацию Nginx:
nginx -t
Включение HTTPS с доменом
1. Направьте ваш домен на IP сервера.
2. Отредактируйте /etc/nginx/sites-available/directory-lister и замените оба server_name _; директивы на ваш домен (например, server_name yourdomain.com;).
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. Отредактируйте /etc/nginx/sites-available/directory-lister и обновите ssl_certificate и ssl_certificate_key директивы, чтобы использовать ваш сертификат Let's Encrypt.
Before:
ssl_certificate /etc/nginx/ssl/directory-lister.crt;
ssl_certificate_key /etc/nginx/ssl/directory-lister.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. Откройте Directory Lister по адресу https://yourdomain.com.
Отключение HTTP Basic Auth в Nginx (необязательно)
Чтобы сделать Directory Lister общедоступным без аутентификации, отключите HTTP Basic Auth по шагам ниже.
Отредактируйте файл сайта Nginx: /etc/nginx/sites-available/directory-lister
Удалите или закомментируйте эти строки:
auth_basic "Directory Lister";
auth_basic_user_file /etc/nginx/.htpasswd-directory-lister;
Перезагрузить Nginx:
systemctl restart nginx
Примечания
- Directory Lister работает в Docker за NGINX.
- Публичный доступ защищён с помощью HTTP Basic Authentication.
- Отображаемые файлы хранятся в
/root/directory-lister/files. - Контейнер приложения имеет только доступ на чтение к каталогу файлов.