Installation in Docker¶
Registry¶
Images for the WebGIS applications are available on GitHub:
https://github.com/orgs/e-netze/packages?ecosystem=container
webgis-cms
webgis-api
webgis-portal
Pull Images¶
Note
The version number here, for example 7.25.4002, may need to be adjusted to the desired version.
Images can be downloaded with the following commands:
docker pull ghcr.io/e-netze/webgis-cms:7.25.4002
docker pull ghcr.io/e-netze/webgis-api:7.25.4002
docker pull ghcr.io/e-netze/webgis-portal:7.25.4002
Locally, the images can then be tagged as latest:
docker tag ghcr.io/e-netze/webgis-cms:7.25.4002 webgis-cms:latest
docker tag ghcr.io/e-netze/webgis-api:7.25.4002 webgis-api:latest
docker tag ghcr.io/e-netze/webgis-portal:7.25.4002 webgis-portal:latest
Starting the containers¶
For running WebGIS in Docker, docker-compose is recommended.
An example configuration can be found in the directory
publish/linux-x64/docker in the repository https://github.com/e-netze/webgis/tree/main/publish/linux-x64/docker.
The configuration can be adapted to your own needs. It can be started with the following command:
docker-compose up -d
The WebGIS applications are then available at the following URLs:
Portal: http://localhost:5002
Note
This requires the images to be available locally with the latest tag.
Stopping the containers¶
The containers can be stopped with the following command:
docker-compose down
Configuration¶
The application-specific _config directories are mapped to separate volumes.
The configuration files can be adjusted there.
The configuration files are located in the _config directory of each application.
The webgis-repository directory is also mapped to its own volume.
All three applications should share this directory.
Environment variables in docker-compose.yml
or in .env, api.env, portal.env, cms.env can also be adjusted.
For example, to change the culture of the applications, the environment variable
Localization__DefaultCulture can be adjusted.
Note
All WebGIS web applications have an endpoint /instance/_culture that can be used to query the current culture
of the application,
and thus also whether the change of the environment variable was successful.
# api.env
# Example: setting the default culture to English (US)
# overriding the default culture from appsettings.json
Localization__DefaultCulture=en-US