Compare commits

...

7 Commits

Author SHA1 Message Date
Evan Rusackas
95a51a10e1 pedantic text edit
Committing this to resolve the comment and re-kick CI.
2024-09-12 09:52:04 -06:00
Sam Firke
17c78e3fb6 Merge branch 'master' into pypi-install-overhaul 2024-07-16 12:53:36 -04:00
Sam Firke
423df6e3e8 Move FLASK_APP variable up to before superset db upgrade
Had accidentally removed it in a prior commit instead of moving it
2024-04-26 10:08:12 -04:00
Sam Firke
c56cb69e6b remove redundant sentence 2024-04-26 09:46:39 -04:00
Sam Firke
74ca930982 Explain how to permanently set the path as an env variable 2024-04-26 09:45:47 -04:00
Sam Firke
d91429a94a Generate the SECRET_KEY right into superset_config.py 2024-04-26 09:38:36 -04:00
Sam Firke
58c25238fe PyPI install: Reorder, clarify, expand, edit 2024-04-25 15:30:59 -04:00

View File

@@ -16,9 +16,7 @@ This page describes how to install Superset using the `apache-superset` package
## OS Dependencies
Superset stores database connection information in its metadata database. For that purpose, we use
the cryptography Python library to encrypt connection passwords. Unfortunately, this library has OS
level dependencies.
Superset uses the `cryptography` Python library to encrypt database connection passwords. This library requires the installation of OS-level dependencies.
**Debian and Ubuntu**
@@ -108,8 +106,6 @@ pip install virtualenv
You can create and activate a virtual environment using:
```bash
# virtualenv is shipped in Python 3.6+ as venv instead of pyvenv.
# See https://docs.python.org/3.6/library/venv.html
python3 -m venv venv
. venv/bin/activate
```
@@ -122,7 +118,7 @@ pyenv virtualenv superset
pyenv activate superset
```
Once you activated your virtual environment, all of the Python packages you install or uninstall
While your virtual environment is activated, all of the Python packages you install or uninstall
will be confined to this environment. You can exit the environment by running `deactivate` on the
command line.
@@ -134,21 +130,40 @@ First, start by installing `apache-superset`:
pip install apache-superset
```
Then, you need to initialize the database:
Superset configurations are stored in a file. One of these configurations, a `SECRET_KEY`, is required for the application to start. Create your config file:
```
touch superset/superset_config.py
```
And make this file findable by adding its path as an environment variable:
```
export SUPERSET_CONFIG_PATH=superset/superset_config.py
```
Note that this stores the path in the environment only temporarily. If you wish for this to persist through reboots, permanently set this environment variable by [adding it to your `~/.profile` file](https://unix.stackexchange.com/questions/117467/how-to-permanently-set-environmental-variables).
```bash
Now generate a strong value for `SECRET_KEY` and write it to your config file:
```
echo "SECRET_KEY='$(openssl rand -base64 42)'" | tee -a superset/superset_config.py
```
Do not lose this key. Consider maintaining a secure backup of your `superset_config.py` file.
You could also tell Superset where to store its metadata - that is, what charts, dashboards, etc. have been created. By default, this is a SQLite database at the filepath `~/.superset/superset.db`.
In a production setup, you would change this to point to, for example, a PostgreSQL database that gets backed up. You change this by specifying a new value in `superset_config.py` for the variable `SQLALCHEMY_DATABASE_URI`.
Set an environment variable so that `superset` commands will work in the terminal. As above, this is temporary, and can be set to persist by adding it to your `~/.profile`.
```
export FLASK_APP=superset
```
Now initialize the database:
```
superset db upgrade
```
:::tip
Note that some configuration is mandatory for production instances of Superset. In particular, Superset will not start without a user-specified value of SECRET_KEY. Please see [Configuring Superset](/docs/configuration/configuring-superset).
:::
Finish installing by running through the following commands:
```bash
```
# Create an admin user in your metadata database (use `admin` as username to be able to load the examples)
export FLASK_APP=superset
superset fab create-admin
# Load some data to play with
@@ -163,3 +178,5 @@ superset run -p 8088 --with-threads --reload --debugger
If everything worked, you should be able to navigate to `hostname:port` in your browser (e.g.
locally by default at `localhost:8088`) and login using the username and password you created.
Next see [Configuring Superset](/docs/configuration/configuring-superset) and further set up your instance.