FileBrowser надає інтерфейс керування файлами на вашому сервері. Це хороша альтернатива файловим менеджерам FileZilla, WinSCP і т.д. Ви можете використовувати його для завантаження, видалення, попереднього перегляду, перейменування та редагування різних файлів. Також тут є можливість створювати користувачів та надавати їм права. Створювати тимчасові посилання на файли або папки.
У цій статті ми розглянемо, як його встановити в Docker контейнері, використовуючи також docker-compose.
Встановлення Docker.
Але спочатку потрібно оновити пакети ОС.
apt update
Встановимо необхідні пакети та додамо новий репозиторій:
apt install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Оновимо пакети з новим репозиторієм:
apt update
Тепер встановимо сам Docker.
apt-get install docker-ce docker-ce-cli containerd.io
Перевіримо версію:
docker --version
Перевіримо статус:
systemctl status docker
Якщо він не запустився, то запускаємо:
systemctl start docker
І додаємо до автозапуску.
systemctl enable docker
Встановлення Docker-Compose
Для даного проекту нам буде достатньо версії 1.25.
curl -L "https://github.com/docker/compose/releases/download/1.25.5/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Встановлюємо права на запуск.
chmod +x /usr/local/bin/docker-compose
Перевіряємо як встановився Docker-Compose:
docker-compose --version
Додаємо користувача Linux до групи docker:
usermod -aG docker $USER
Створимо файл *.yaml для Docker-Compose.
Щоб орієнтуватися у майбутньому у тому, що у нас встановлено, створимо окрему папку для даного проекту у каталозі /home та перейдемо до неї.
mkdir /home/filebrowser && cd /home/filebrowser
Ви також можете використовувати іншу директорію для розміщення цього та інших проектів.
Скористаємося репозиторієм для створення файлу docker-compose.yaml за посиланням https://hub.docker.com/r/filebrowser/filebrowser
Створюємо файл docker-compose.yaml або docker-compose.yml,
vim docker-compose.yaml
І додаємо до нього наступний код:
version: '3.3'
services:
filebrowser:
container_name: filebrowser
volumes:
- /:/srv
- /root/filebrowser/datbase/filebrowser.db:/database/filebrowser.db
environment:
- PUID=0
- PGID=0
ports:
- 9090:80
restart: always
image: filebrowser/filebrowser:s6
Де:
container_name: назва Вашого контейнера;
У блоку volumes вказуємо шляхи, за якими буде доступне зберігання бази даних та сама папка з файлами. У даному прикладі вказано / (корінь), що дозволяє мати доступ до всіх файлів на сервері.
ports: 9090 - порт, через який буде відбуватися підключення до панелі менеджера.
Також перед запуском docker-compose, створимо файл для бази даних filebrowser.db за шляхом, який вказали у volumes - /root/filebrowser/database/
Якщо цього не зробити, у логах будемо спостерігати помилку: filebrowser.db є директорією.
Запускаємо скрипт (для цього потрібно перебувати у директорії, де створено наш файл. У даному випадку це /home/filebrowser/):
docker-compose up -d
Чекаємо завантаження образів та розгортання.
Перевіряємо:
docker-compose ps
або
docker ps
Також можна встановити FileBrowser однією командою без використання docker compose.
docker run -v /:/srv -v /root/filebrowser/datbase/filebrowser.db:/database/filebrowser.db -e PUID=0 -e PGID=0 -p 9090:80 -d filebrowser/filebrowser:s6
Для перегляду логів використовуйте команду
docker logs -f filebrowser
Тепер можете використовувати IP Вашого сервера та порт, який вказали, у даному випадку це 9090, щоб підключитися до веб інтерфейсу.
Для авторизації використовуйте:
логін: admin
пароль: admin
Приємного використання.