This repository will be used to help track issues and share files for the existing Streamwebs site during the transition to a possible re-write of the application.
To set up a dev instance of StreamWebs, copy Dockerfile.env.dist to Dockerfile.env. You will also have to copy
settings.py.dist to settings.py (located in streamwebs_frontend/streamwebs_frontend). Then, run the
following:
$ docker-compose build
$ docker-compose upThe following is a list of the more common and more useful docker commands:
docker-compose buildwill build the necessary containersdocker-compose build --no-cache --pulldoes a full from-scratch build; you can run this when the changes made to the docker environment are not taking effect.docker-compose upruns the applicationdocker-compose run web bashis like docker-compose up but also provides an interactive shelldocker-compose run --service-ports --rm web bashexposes the ports described for the web service and removes the container upon completiondocker-compose killstops services that are runningdocker-compose rmremoves all the containers associated with the application's servicesdocker-compose pslists all the running containers
After running docker-compose up, docker doesn't print the standard "django app is running" output. Instead, just go
to http://localhost:8000 instead.
Run flake8 streamwebs_frontend --exclude streamwebs_frontend/streamwebs/migrations to exclude the migrations
directory when linting.
If you'd like to access the postgresql database, open up an interactive shell with docker-compose run web bash.
Then run the following command: PGPASSWORD=$POSTGRES_PASSWORD psql -h postgres_host -U $POSTGRES_USER streamwebs.
This will bring you to the postgres interactive terminal. You can also do get access running python streamwebs_frontend/manage.py dbshell.
If you would like to drop the streamwebs database each time the web container runs, add STREAMWEBS_DROP=1 to
your Dockerfile.env file.
If you would like to only run tests, add STREAMWEBS_TEST=1 to your Dockerfile.env file. Keep in mind this
doesn't run the django web server and only runs the tests.
If you want to automatically import the CSV data, you need to add both STREAMWEBS_DROP=1 and
STREAMWEBS_IMPORT_DATA=1 to your Dockerfile.env file.