.devcontainer/docker-compose.yml
version: '3.4'
volumes:
guacamole-db:
services:
# qgis-desktop-latest:
# build:
# context: .devcontainer/qgis-desktop
# args:
# IMAGE: qgis/qgis
# QGIS_VERSION_TAG: latest
# environment:
# QGIS_VERSION_TAG: "latest"
# WITH_PYTHON_PEP: "${WITH_PYTHON_PEP}"
# INASAFE_LOGGING_LEVEL: 50
# INASAFE_DISABLE_WELCOME_MESSAGE: 1
# ON_TRAVIS: "${ON_TRAVIS}"
# MUTE_LOGS: "${MUTE_LOGS}"
# working_dir: /home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe
# volumes:
# # Update this to wherever you want VS Code to mount the folder of your project
# - .:/home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe:cached
qgis-desktop-3-20:
build:
context: .devcontainer/qgis-desktop
args:
IMAGE: qgis/qgis
QGIS_VERSION_TAG: release-3_20
environment:
QGIS_VERSION_TAG: "release-3_20"
WITH_PYTHON_PEP: "${WITH_PYTHON_PEP}"
INASAFE_LOGGING_LEVEL: 50
INASAFE_DISABLE_WELCOME_MESSAGE: 1
ON_TRAVIS: "${ON_TRAVIS}"
MUTE_LOGS: "${MUTE_LOGS}"
# working_dir: /home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe
# volumes:
# # Update this to wherever you want VS Code to mount the folder of your project
# - .:/home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe:cached
working_dir: /workspace
volumes:
- .devcontainer/qgis-desktop/entrypoint.py:/opt/docker-entrypoint.py
- .:/workspace:cached
- .:/tests_directory:cached
# qgis-desktop-3-16:
# build:
# context: .devcontainer/qgis-desktop
# args:
# IMAGE: qgis/qgis
# QGIS_VERSION_TAG: release-3_16
# environment:
# QGIS_VERSION_TAG: "release-3_16"
# WITH_PYTHON_PEP: "${WITH_PYTHON_PEP}"
# INASAFE_LOGGING_LEVEL: 50
# INASAFE_DISABLE_WELCOME_MESSAGE: 1
# ON_TRAVIS: "${ON_TRAVIS}"
# MUTE_LOGS: "${MUTE_LOGS}"
# working_dir: /workspace
# volumes:
# # Update this to wherever you want VS Code to mount the folder of your project
# - .:/workspace:cached
# # working_dir: /home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe
# # volumes:
# # # Update this to wherever you want VS Code to mount the folder of your project
# # - .:/home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe:cached
# qgis-desktop-3-14:
# build:
# context: .devcontainer/qgis-desktop
# args:
# IMAGE: qgis/qgis
# QGIS_VERSION_TAG: release-3_14
# environment:
# QGIS_VERSION_TAG: "release-3_14"
# WITH_PYTHON_PEP: "${WITH_PYTHON_PEP}"
# INASAFE_LOGGING_LEVEL: 50
# INASAFE_DISABLE_WELCOME_MESSAGE: 1
# ON_TRAVIS: "${ON_TRAVIS}"
# MUTE_LOGS: "${MUTE_LOGS}"
# working_dir: /home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe
# volumes:
# # Update this to wherever you want VS Code to mount the folder of your project
# - .:/home/gisuser/.local/share/QGIS/QGIS3/profiles/default/python/plugins/inasafe:cached
guacamole-client:
image: guacamole/guacamole:1.3.0
ports:
- "8080:8080"
volumes:
- ./.devcontainer/guacamole:/etc/guacamole
environment:
GUACD_HOSTNAME: guacd
POSTGRES_HOSTNAME: guacamole-db
POSTGRES_DATABASE: guaca
POSTGRES_USER: guaca
POSTGRES_PASSWORD: guaca
guacd:
image: guacamole/guacd:1.3.0
guacamole-db:
image: kartoza/postgis:13-3.1
environment:
POSTGRES_USER: guaca
POSTGRES_PASSWORD: guaca
POSTGRES_DBNAME: guaca
ALLOWED_HOSTS: "0.0.0.0/0"
PASSWORD_AUTHENTICATION: "md5"
volumes:
- ./.devcontainer/postgis/initdb.d:/docker-entrypoint-initdb.d
- guacamole-db:/var/lib/postgresql
# Update this to the name of the service you want to work with in your docker-compose.yml file
qgis-testing-environment:
# If you want add a non-root user to your Dockerfile, you can use the "remoteUser"
# property in devcontainer.json to cause VS Code its sub-processes (terminals, tasks,
# debugging) to execute as the user. Uncomment the next line if you want the entire
# container to run as this user instead. Note that, on Linux, you may need to
# ensure the UID and GID of the container user you create matches your local user.
# See https://aka.ms/vscode-remote/containers/non-root for details.
#
# user: vscode
# Uncomment if you want to override the service's Dockerfile to one in the .devcontainer
# folder. Note that the path of the Dockerfile and context is relative to the *primary*
# docker-compose.yml file (the first in the devcontainer.json "dockerComposeFile"
# array). The sample below assumes your primary file is in the root of your project.
#
# build:
# context: .
# dockerfile: .devcontainer/Dockerfile
init: true
volumes:
# Update this to wherever you want VS Code to mount the folder of your project
- .:/workspace:cached
# Uncomment the next line to use Docker from inside the container. See https://aka.ms/vscode-remote/samples/docker-from-docker-compose for details.
- /var/run/docker.sock:/var/run/docker.sock
# Uncomment the next four lines if you will use a ptrace-based debugger like C++, Go, and Rust.
# cap_add:
# - SYS_PTRACE
# security_opt:
# - seccomp:unconfined
# Overrides default command so things don't shut down after the process ends.
command: /bin/sh -c "while sleep 1000; do :; done"