Mercurial > gemma
view docker/README.md @ 628:ef9c733cc6aa
client: show more wfs layers
* Add waterway axis, waterway area and distance marks as fully loaded
WFS layers. Distance marks are disabled by default, with code
that honors the isVisible attribute. Code is duplicated, and marked
with FIXMEs.
author | Bernhard Reiter <bernhard@intevation.de> |
---|---|
date | Tue, 11 Sep 2018 17:52:20 +0200 |
parents | 6d7c0dbf9d21 |
children | 86725b39b2d2 |
line wrap: on
line source
# Setup dev environment using Docker Run the `build` commands from the root of your checkout, because it is assumed as the context! Other example commands, too, assume they are run from the root of your checkout. ## Database setup - Build Dockerfile with e.g.: ``` docker build -t gemma_db -f docker/Dockerfile.db . ``` - Get a running instance with e.g.: ``` docker run --name gemma_db -d -p 54321:5432 -v $PWD/schema:/opt/gemma \ gemma_db ``` - Run tests for RLS policies: ``` docker exec gemma_db ./run_tests.sh ``` ## Create ER diagrams Assuming you have installed postgresql_autodoc and graphviz on a machine from wich you can reach your docker host, you can use the following: - ER diagram with waterway related tables: ``` postgresql_autodoc -p 54321 -h $dockerhost \ -d gemma -U sophie --password=so2Phie4 -t dot -l . -s 'waterway' dot -Tpdf gemma.dot > gemma_waterway.pdf ``` Omit the `-s` option to get a diagram with all tables or use any other schema name to see other parts of the whole picture. ## Network setup - Create a network to connect containers: ``` docker network create gemma ``` - Connect database to new network ``` docker network connect gemma gemma_db ``` Use `--alias gemma_db` if your container has a different name ## GeoServer setup - Build Dockerfile with e.g.: ``` docker build -t gemma_geoserver -f docker/Dockerfile.geoserv . ``` - Get a running instance with e.g.: ``` docker run --name gemma_geoserver -d -p 8280:8080 --network gemma \ gemma_geoserver ``` Use `--network-alias gemma_geoserver` if you give your container a different name. ## Gemma backend setup - Build Dockerfile with e.g.: ``` docker build -t gemma_backend -f docker/Dockerfile.backend . ``` - Get a running instance with e.g.: ``` docker run --name gemma_backend -v $PWD:/opt/gemma -d -p 8200:8000 \ --network gemma gemma_backend ``` Use `--network-alias gemma_backend` if you give your container a different name. ## SPA setup - Build Dockerfile with e.g.: ``` docker build -t gemma_spa -f docker/Dockerfile.spa . ``` - Get a running instance with e.g.: ``` docker run --name gemma_spa -v $PWD/client:/opt/gemma_spa -d -p 8290:8080 \ --network gemma gemma_spa ``` Now you should be able to use the application in your browser by going to `http://HOST:8290`, with HOST being the hostname of your docker host.