Allow to execute "flask shell" in the portal container without setting env variables
**Recommended skills:** * Rough understanding of Docker, or * Will to read some documentation and fiddle around. --- Flask applications allow access to a Python shell with which Python code can be executed in the running application using the command `flask shell`. For this to work, the environment variable `FLASK_APP` needs to be set to contain the name of the application to spawn a shell into. As we run the Flask app inside docker, we first need to get inside the Docker container using: ```bash sudo docker exec -it portal-app-1 bash ``` Then, we need to set the environment variable and launch the shell: ```bash export FLASK_APP=portal flask shell ``` This is annoying. It would be cooler to just execute: ```bash sudo docker exec -it portal-app-1 flask shell ``` But that yields to the following error, because the environment variable `FLASK_APP` is not set: ``` Usage: flask shell [OPTIONS] Try 'flask shell --help' for help. Error: Could not locate a Flask application. Use the 'flask --app' option, 'FLASK_APP' environment variable, or a 'wsgi.py' or 'app.py' file in the current directory. ``` It would be great if that could be fixed, preferably by editing the [`Dockerfile`](https://gitlab.cl.uni-heidelberg.de/fachschaft/portal/-/blob/master/Dockerfile?ref_type=heads) somehow. ## Maybe helpful resources * [`Dockerfile` reference](https://docs.docker.com/reference/dockerfile/) * [Flask Command Line Interface](https://flask.palletsprojects.com/en/2.3.x/cli/)
issue