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
Приятного использования.
Также предлагаем рассмотреть другие полезные статьи: