-
Notifications
You must be signed in to change notification settings - Fork 46
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
#622 Add v1 docker-compose and fix CMD-SHELL
- Loading branch information
1 parent
caa7e1a
commit 58a3ce4
Showing
2 changed files
with
179 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,171 @@ | ||
services: | ||
mmgis: | ||
build: . | ||
depends_on: | ||
- db | ||
env_file: .env | ||
ports: | ||
- 8888:8888 | ||
restart: on-failure | ||
volumes: | ||
- ./Missions:/usr/src/app/Missions | ||
- ./ssl:/usr/src/app/ssl | ||
|
||
stac-fastapi: | ||
image: ghcr.io/stac-utils/stac-fastapi-pgstac:3.0.0 | ||
ports: | ||
- 8881 | ||
environment: | ||
# Postgres connection | ||
- POSTGRES_USER=username | ||
- POSTGRES_PASS=password | ||
- POSTGRES_DBNAME=mmgis-stac | ||
- POSTGRES_HOST_READER=db | ||
- POSTGRES_HOST_WRITER=db | ||
- POSTGRES_PORT=5432 | ||
- DB_MIN_CONN_SIZE=1 | ||
- DB_MAX_CONN_SIZE=1 | ||
depends_on: | ||
- db | ||
command: bash -c "bash /tmp/scripts/wait-for-it.sh -t 120 -h db -p 5432 && uvicorn stac_fastapi.pgstac.app:app --host 0.0.0.0 --port 8881" | ||
volumes: | ||
- ./adjacent-servers/docker-scripts:/tmp/scripts | ||
- ./Missions:/Missions | ||
|
||
tipg: | ||
image: ghcr.io/developmentseed/tipg:0.7.2 | ||
ports: | ||
- 8882 | ||
environment: | ||
# Application | ||
- HOST=0.0.0.0 | ||
- PORT=8882 | ||
# https://github.com/tiangolo/uvicorn-gunicorn-docker#web_concurrency | ||
- WEB_CONCURRENCY=10 | ||
# https://github.com/tiangolo/uvicorn-gunicorn-docker#workers_per_core | ||
# - WORKERS_PER_CORE=1 | ||
# https://github.com/tiangolo/uvicorn-gunicorn-docker#max_workers | ||
# - MAX_WORKERS=10 | ||
# Postgres connection | ||
- POSTGRES_USER=username | ||
- POSTGRES_PASS=password | ||
- POSTGRES_DBNAME=mmgis-stac | ||
- POSTGRES_HOST=db | ||
- POSTGRES_PORT=5432 | ||
- DB_MIN_CONN_SIZE=1 | ||
- DB_MAX_CONN_SIZE=10 | ||
command: bash -c "bash /tmp/scripts/wait-for-it.sh -t 120 -h db -p 5432 && /start.sh" | ||
depends_on: | ||
- db | ||
volumes: | ||
- ./adjacent-servers/docker-scripts:/tmp/scripts | ||
- ./Missions:/Missions | ||
|
||
titiler: | ||
# TODO: remove once https://github.com/rasterio/rasterio-wheels/issues/69 is resolved | ||
# See https://github.com/developmentseed/titiler/discussions/387 | ||
platform: linux/amd64 | ||
image: ghcr.io/developmentseed/titiler-uvicorn:0.18.6 | ||
ports: | ||
- 8883 | ||
environment: | ||
# Application | ||
- HOST=0.0.0.0 | ||
- PORT=8883 | ||
# Uvicorn | ||
# http://www.uvicorn.org/settings/#production | ||
- WEB_CONCURRENCY=1 | ||
# GDAL config | ||
- CPL_TMPDIR=/tmp | ||
- GDAL_CACHEMAX=75% | ||
- GDAL_INGESTED_BYTES_AT_OPEN=32768 | ||
- GDAL_DISABLE_READDIR_ON_OPEN=EMPTY_DIR | ||
- GDAL_HTTP_MERGE_CONSECUTIVE_RANGES=YES | ||
- GDAL_HTTP_MULTIPLEX=YES | ||
- GDAL_HTTP_VERSION=2 | ||
- PYTHONWARNINGS=ignore | ||
- VSI_CACHE=TRUE | ||
- VSI_CACHE_SIZE=536870912 | ||
# GDAL VSI Config | ||
# https://gdal.org/user/virtual_file_systems.html#vsis3-aws-s3-files | ||
# https://gdal.org/user/virtual_file_systems.html#vsigs-google-cloud-storage-files | ||
# https://gdal.org/user/virtual_file_systems.html#vsiaz-microsoft-azure-blob-files | ||
# - AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} | ||
# - AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} | ||
# TiTiler config | ||
# - TITILER_API_DISABLE_STAC=TRUE/FALSE | ||
# - TITILER_API_DISABLE_MOSAIC=TRUE/FALSE | ||
# - TITILER_API_DISABLE_COG=TRUE/FALSE | ||
# - TITILER_API_CORS_ORIGIN=url.io,url.xyz | ||
# - TITILER_API_CACHECONTROL=public, max-age=3600 | ||
# - TITILER_API_DEBUG=TRUE/FALSE | ||
# - MOSAIC_CONCURRENCY= # will default to `RIO_TILER_MAX_THREADS` | ||
# rio-tiler config | ||
# - RIO_TILER_MAX_THREADS= | ||
volumes: | ||
- ./Missions:/Missions | ||
|
||
titiler-pgstac: | ||
# At the time of writing, rasterio and psycopg wheels are not available for arm64 arch | ||
# so we force the image to be built with linux/amd64 | ||
platform: linux/amd64 | ||
image: ghcr.io/stac-utils/titiler-pgstac:1.4.0 | ||
ports: | ||
- 8884 | ||
environment: | ||
# Application | ||
- HOST=0.0.0.0 | ||
- PORT=8884 | ||
# https://github.com/tiangolo/uvicorn-gunicorn-docker#web_concurrency | ||
- WEB_CONCURRENCY=1 | ||
# https://github.com/tiangolo/uvicorn-gunicorn-docker#workers_per_core | ||
- WORKERS_PER_CORE=1 | ||
# https://github.com/tiangolo/uvicorn-gunicorn-docker#max_workers | ||
- MAX_WORKERS=10 | ||
# Postgres connection | ||
- POSTGRES_USER=username | ||
- POSTGRES_PASS=password | ||
- POSTGRES_DBNAME=mmgis-stac | ||
- POSTGRES_HOST=db | ||
- POSTGRES_PORT=5432 | ||
- DB_MIN_CONN_SIZE=1 | ||
- DB_MAX_CONN_SIZE=10 | ||
# - DB_MAX_QUERIES=10 | ||
# - DB_MAX_IDLE=10 | ||
# GDAL Config | ||
- CPL_TMPDIR=/tmp | ||
- GDAL_CACHEMAX=75% | ||
- GDAL_INGESTED_BYTES_AT_OPEN=32768 | ||
- GDAL_DISABLE_READDIR_ON_OPEN=EMPTY_DIR | ||
- GDAL_HTTP_MERGE_CONSECUTIVE_RANGES=YES | ||
- GDAL_HTTP_MULTIPLEX=YES | ||
- GDAL_HTTP_VERSION=2 | ||
- VSI_CACHE=TRUE | ||
- VSI_CACHE_SIZE=536870912 | ||
# TiTiler Config | ||
- MOSAIC_CONCURRENCY=1 | ||
# AWS S3 endpoint config | ||
- AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID} | ||
- AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY} | ||
# TiTiler pgSTAC | ||
- TITILER_PGSTAC_SEARCH_EXITWHENFULL=FALSE | ||
- TITILER_PGSTAC_SEARCH_SKIPCOVERED=FALSE | ||
depends_on: | ||
- db | ||
command: bash -c "bash /tmp/scripts/wait-for-it.sh -t 120 -h db -p 5432 && /start.sh" | ||
volumes: | ||
- ./Missions:/Missions | ||
- ./adjacent-servers/docker-scripts:/tmp/scripts | ||
|
||
db: | ||
image: postgis/postgis:16-3.4-alpine | ||
env_file: .env | ||
environment: | ||
- POSTGRES_PASSWORD_OFF=Rename to 'POSTGRES_PASSWORD' and replace this with an initial root password for the DB | ||
ports: | ||
- 5432 | ||
restart: on-failure | ||
volumes: | ||
- mmgis-db:/var/lib/postgresql/data | ||
volumes: | ||
mmgis-db: |