Найти в Дзене
DeSoft.ru

Организация доступа к локальным данным по http протоколу

Существует множество способов быстро передать данные с целевой машины. Одним из наиболее простых вариантов является публикация через веб сервер для доступа из браузера. Приведу несколько решений, как для одноразового применения, так и для постоянного целевого использования. 📌 python нынче поставляется в комплекте многих операционных систем, его базовый http сервер и применим. python3 -m http.server 8000 Идем в браузер по заданному адресу Для разовых манипуляций более чем достаточно. 📌 Браузерный файловый менеджер File Browser Уже куда более приятный инструмент для работы с расшаренными ресурсами прямо в веб интерфейсе. # устанавливаем
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash
# задаем адрес и порт в настройках
filebrowser config init -a 0.0.0.0 -p 8080
# добавляем админа
filebrowser users add demo demo -perm.admin
# запускаем над каталогом с данными
filebrowser -r /home/desoft/data Идем в браузер по заданному адресу 📌 Схожим набором функций

Существует множество способов быстро передать данные с целевой машины. Одним из наиболее простых вариантов является публикация через веб сервер для доступа из браузера. Приведу несколько решений, как для одноразового применения, так и для постоянного целевого использования.

📌 python нынче поставляется в комплекте многих операционных систем, его базовый http сервер и применим.

  • Переходим в каталог с данными.
  • Запускаем сервер
python3 -m http.server 8000
  • Забираем данные через браузер.
  • Завершаем работу сервера.

Идем в браузер по заданному адресу

-2

Для разовых манипуляций более чем достаточно.

📌 Браузерный файловый менеджер File Browser

Уже куда более приятный инструмент для работы с расшаренными ресурсами прямо в веб интерфейсе.

  • Загрузка каталогов и файлов на / с сервера
  • Создание, удаление, изменение файлов и директорий
  • Доступ по временной ссылке
  • Многопользовательский доступ
  • Обработка событий с возможностью добавления собственных скриптов
# устанавливаем
curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash

# задаем адрес и порт в настройках
filebrowser config init -a 0.0.0.0 -p 8080

# добавляем админа
filebrowser users add demo demo -perm.admin

# запускаем над каталогом с данными
filebrowser -r /home/desoft/data

Идем в браузер по заданному адресу

-3

📌 Схожим набором функций обладает еще одно минималистичное решение - Mikochi

Можно запустить также через бинарник, поднять в docker или kubernetes.

# запускаем
docker run \
-p 8080:8080 -v /home/desoft/data:/data \
-e DATA_DIR="/data" -e USERNAME=demo \
-e PASSWORD=demo zer0tonin/mikochi:latest

Идем в браузер по заданному адресу

-4

📌 Богатая на возможности программа RClone

Помимо основного назначения синхронизации файлов с облачными хранилищами, утилита предоставляет функцию трансляции файловой системы через веб сервер для взаимодействия по http протоколу.

# устанавливаем
sudo -v ; curl https://rclone.org/install.sh | sudo bash

# запускаем
# --dir-cache-time - время хранения кэша записей смонтированной директории

# --poll-interval - время ожидания между опросами изменений
rclone serve http -vvv /home/desoft/data --addr 0.0.0.0:8020 --dir-cache-time 5s --poll-interval 0

Идем в браузер по заданному адресу

-5
  • Широкий выбор операционных систем, в том числе Linux, macOS, BSD, Windows
  • Поддержка буферизации и кэширования файлов
  • Подключение как локальных, так и облачных хранилищ
  • Поддержка запросов на чтение отдельных частей файлов
  • Мониторинг обращений
  • Гибкая настройка параметров

Полный перечень доступных конфигураций здесь.