Способ описан для быстрого развертывания инструмента Superset в Windows.

Для быстрого старта, надо поставить себе WSL (прочекай, чтобы он не жрал всю ОЗУ и не забивал ЦП на 97% — если съедает, гугли, как исправить ситуацию (там все просто)).

Исходим из того, что ты прочитал, что такое Докер, WSL и в общем можешь открыть консоль. Дальше все просто.

Вызывай CMD и внутри консоли, переходи в подсистему, командой WSL. Далее вводи две команды по очереди:

docker volume create postges_vol_1
docker network create app_net

После этого, вводи команду для создания контейнера с Постгресом:

docker run -d \
	--name postgresBD \
	-e POSTGRES_PASSWORD=postges_admin \
	-e POSTGRES_USER=postges_admin \
	-e POSTGRES_DB=TytPtostoBaza \
	-v postges_vol_1:/var/lib/postgresql/data \
	--net=app_net \
	postgres:14

Т.к. мы заранее не скачивали Image, консоль (или докер) справится сама. Сначала скачает Image, а затем развернет из этого контейнер. Здесь (в коде выше) мы назначаем имя нашему контейнеру postgresBD и необходимые поля для будущего подключения к БД.

Также, образ и контейнер появится в Docker Desktop. Образ:

Контейнер:

Далее, инициируем создание контейнера с Суперсетом. История аналогична, как с Постгресом — сначала скачается образ, а затем развернется контейнер:

docker run -d --net=app_net -p 80:8088 --name superset apache/superset

Можем видеть, что у нас есть 2 контейнера, которые были только что созданы. Их же, а также образа можно увидеть в Докере.

Далее, скорее всего затребует ключ безопасности. Его можно вставить, следующим кодом:

docker cp /mnt/c/Users/user/SUP/superset_config.py b75cdb042aed:/app/pythonpath

Более подробно, описал в этой статье — тыкать сюда.

Уже сейчас, можно зайти на локал хост (http://localhost/login/) и посмотреть, что Superset запустился:

Следующим шагом, задаем настройки для самого Superseta:

docker exec -it superset superset fab create-admin \
              --username admin \
              --firstname Superset \
              --lastname Admin \
              --email admin@superset.com \
              --password admin

Задаем в контейнер, что заходить будем через admin /admin (можно прописать что угодно в принципе). Также супер сет необходимо обновить:

docker exec -it superset superset db upgrade

При желании, можно загрузить примеры разных таблиц и вот этого всего, для пробы пера, так сказать (но совсем не обязательно):

docker exec -it superset superset load_examples

Ну и останется инициализировать все это:

docker exec -it superset superset init

Подключение Superset`a к созданной базе данных

В данный момент, у нас есть созданная БД и Суперсет с настройками, по которым мы сможем зайти внутрь программы и приконнектиться к Постгресу. Есть два контейнера:

И два образа:

Заходим на локальный адрес суперсета http://localhost/login/ и вводим указанные нами логин и пароль:

И попадаем внутрь:

Далее необходимо приконектиться к нашей БД:

В следующем окне очевидно выбираем постгр

Где уже в следующем окне, вводим заданные ранее параметры:

Понятно, что мы подключаемся к контейнеру с постгресом по названию, и указываем БД которую задали в при развертывании самого контейнера. Далее, во втором экране, надо поставить галки напротив Allow:

И нажимаем Finish. Далее самое главное.

Активация возможности загрузки Exel и CSV в Superset

На мой взгляд это то, ради чего вообще стоить заморочиться всей этой настройкой и установкой — свободная загрузка Excel файлов, с дальнейшей возможностью уже потом практиковать sql и визуализацию.

Что необходимо сделать:

Перейти на страницу Databases Connections и узреть, что мы пока не можем загружать файлы (даже CSV).

При наведении на строку мышкой с нашей DB, появляется возможность изменять, загружать и править (что-то) в настройках:

Кликаем по Edit. Появляется знакомое окно:

Где переходим на окно ADVANCED и кликаем по Security:

Внутри которого, находим нужный нам чекбокс на активацию загрузки файлов:

После чего можем видеть, что появилась возможность загружать файлы!

Собственно, начинаем работать!

Поддержка контейнеров Superset`a и Postgres`a

Контейнеры созданы, и будут храниться такими, какими мы их оставили. Для того, чтобы запускать именно эти контейнеры, необходимо использовать команды:

sudo docker container start superset
sudo docker container start postgresBD

Понятно, что мы запускаем по названию.

Чтобы остановить контейнеры:

sudo docker container stop superset
sudo docker container stop postgresBD

Собственно, на этом все. Получается, что у нас есть созданные контейнеры из образов, которые мы настроили под себя. И теперь, каждый раз при какой-то необходимости, можем быстро разворачивать суперсет с возможностью чтения даже Excel файлов.