StreamWebs
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 up
The 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 effectdocker-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
Note that docker-compose and docker commands may need to be run as root with
the sudo prefix.
If you run into this error:
ERROR: stat /home/thai/projects/streamwebs: too many levels of symbolic links
restarting docker should fix the problem. The command to do so is
sudo systemctl restart docker
Another note: after running docker-compose up, docker doesn't print the
standard "django app is running" output. Just know that it is.
You can check that this is true by going to localhost:8000/streamwebs in
your browser.
Miscellaneous Tips
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:
``psql -h $POSTGRES_HOST -d streamwebs -U $POSTGRES_USER. This will bring you
to the postgres interactive terminal.