apache-superset

Apache Superset, Ubuntu, from scratch - superset-frontend directory does not created


Trying to install Apache Superset "from Scratch" according to official instructions: "https://superset.apache.org/docs/installation/installing-superset-from-scratch/" on Ubuntu 22.04 OS:

Оn first step, "OS Dependencies", Python3.10 was installed.

  1. "Then, you need to initialize the database: superset db upgrade"
  1. "# Build javascript assets cd superset-frontend npm ci npm run build cd .. "

I do not know what I can do in this case (afraid all that are "by design")... Can somebody help? Is it possible to install Apache Superset "from Scratch" on Ubuntu 22.04? What exact sequence of commands needed for that?


Solution

  • As I could figured it out, you don't need to go to directory superset-frontend and compile assets in case of Python Virtual Environment.

    Take a look at this part of docs (you could see no reference for superset-frontend and actions with it): https://apache-superset.readthedocs.io/en/latest/installation.html#superset-installation-and-initialization

    My exact commands to start Superset from scratch with Python Virtual Enviroment:

    mkdir superset
    
    cd superset/
    
    python3 -m venv venv
    
    . venv/bin/activate
    
    # to update pip from 22.01 with bugs
    pip install --upgrade pip
    
    # my metadata database for Superset is Postgres12 so I need to install python lib for connecting to PG
    pip install psycopg2
    
    # to resolve warnings about missing PIL installation
    pip install pillow
    
    #here you need to a create superset_config.py with own SecretKey string as it described in https://superset.apache.org/docs/installation/configuring-superset/#configuration
    #my metadata database for Superset is Postgres12
    #SQLALCHEMY_DATABASE_URI = 'postgresql://superset_db_owner:[password_for_owner]@[hostname]:5432/superset'
    
    #connect from postgres superadmin and run these statements row by row in a IDE query window (dbeaver or etc)
    #CREATE ROLE superset_db_owner WITH NOCREATEDB CREATEROLE;
    #ALTER ROLE superset_db_owner WITH PASSWORD 'password_for_owner' LOGIN;
    #create database superset with OWNER = "superset_db_owner";
    #create schema "primary" AUTHORIZATION "superset_db_owner";
    #ALTER DATABASE superset SET SEARCH_PATH TO "primary", public;
    
    #master superset_config.py is located in a directory above and I just copy it to my folder
    cp ../superset_config.py .
    
    export SUPERSET_CONFIG_PATH=/home/lightshade/pyenv/superset/superset_config.py
    
    export FLASK_APP=superset
    
    superset db upgrade
    
    superset fab create-admin
    
    superset load_examples
    
    superset init
    
    superset run -p 8088 --with-threads --reload --debugger
    
    go to http://localhost:8088/login/
    

    As a result you should see that screen: enter image description here