opened image

Как установить FileBrowser в Docker

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




 

Приятного использования. 

Также предлагаем рассмотреть другие полезные статьи: