ВОЙТИ
    opened image

    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




     

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