1
1
services :
2
- stac :
2
+ stac-pg :
3
+ profiles : ["pg"]
3
4
image : ghcr.io/stac-utils/stac-fastapi-pgstac:5.0.2
4
5
environment :
5
6
APP_HOST : 0.0.0.0
@@ -9,8 +10,8 @@ services:
9
10
POSTGRES_USER : username
10
11
POSTGRES_PASS : password
11
12
POSTGRES_DBNAME : postgis
12
- POSTGRES_HOST_READER : database
13
- POSTGRES_HOST_WRITER : database
13
+ POSTGRES_HOST_READER : database-pg
14
+ POSTGRES_HOST_WRITER : database-pg
14
15
POSTGRES_PORT : 5432
15
16
WEB_CONCURRENCY : 10
16
17
VSI_CACHE : TRUE
@@ -22,10 +23,40 @@ services:
22
23
ports :
23
24
- " 8001:8001"
24
25
depends_on :
25
- - database
26
- command : bash -c "./scripts/wait-for-it.sh database:5432 && python -m stac_fastapi.pgstac.app"
26
+ - database-pg
27
+ command : bash -c "./scripts/wait-for-it.sh database-pg :5432 && python -m stac_fastapi.pgstac.app"
27
28
28
- database :
29
+ stac-os :
30
+ profiles : ["os"]
31
+ container_name : stac-fastapi-os
32
+ image : ghcr.io/stac-utils/stac-fastapi-os:v6.1.0
33
+ hostname : stac-os
34
+ environment :
35
+ STAC_FASTAPI_TITLEL : stac-fastapi-opensearch
36
+ STAC_FASTAPI_DESCRIPTION : A STAC FastAPI with an Opensearch backend
37
+ STAC_FASTAPI_VERSION : 6.0.0
38
+ STAC_FASTAPI_LANDING_PAGE_ID : stac-fastapi-opensearch
39
+ APP_HOST : 0.0.0.0
40
+ APP_PORT : 8001
41
+ RELOAD : true
42
+ ENVIRONMENT : local
43
+ WEB_CONCURRENCY : 10
44
+ ES_HOST : database-os
45
+ ES_PORT : 9200
46
+ ES_USE_SSL : false
47
+ ES_VERIFY_CERTS : false
48
+ BACKEND : opensearch
49
+ STAC_FASTAPI_RATE_LIMIT : 200/minute
50
+ ports :
51
+ - " 8001:8001"
52
+ depends_on :
53
+ - database-os
54
+ command :
55
+ bash -c "./scripts/wait-for-it-es.sh database-os:9200 && python -m stac_fastapi.opensearch.app"
56
+
57
+ database-pg :
58
+ profiles : ["pg"]
59
+ container_name : database-pg
29
60
image : ghcr.io/stac-utils/pgstac:v0.9.5
30
61
environment :
31
62
POSTGRES_USER : username
@@ -40,13 +71,30 @@ services:
40
71
volumes :
41
72
- ./.pgdata:/var/lib/postgresql/data
42
73
74
+ database-os :
75
+ profiles : ["os"]
76
+ container_name : database-os
77
+ image : opensearchproject/opensearch:${OPENSEARCH_VERSION:-2.11.1}
78
+ hostname : database-os
79
+ environment :
80
+ cluster.name : stac-cluster
81
+ node.name : os01
82
+ http.port : 9200
83
+ http.cors.allow-headers : X-Requested-With,Content-Type,Content-Length,Accept,Authorization
84
+ discovery.type : single-node
85
+ plugins.security.disabled : true
86
+ OPENSEARCH_JAVA_OPTS : -Xms512m -Xmx512m
87
+ ports :
88
+ - " 9200:9200"
89
+
43
90
proxy :
91
+ profiles : ["pg", "os"]
44
92
depends_on :
45
- - stac
93
+ - oidc
46
94
build :
47
95
context : .
48
96
environment :
49
- UPSTREAM_URL : ${UPSTREAM_URL:-http://stac:8001}
97
+ UPSTREAM_URL : ${UPSTREAM_URL:-http://stac-pg :8001}
50
98
OIDC_DISCOVERY_URL : ${OIDC_DISCOVERY_URL:-http://localhost:8888/.well-known/openid-configuration}
51
99
OIDC_DISCOVERY_INTERNAL_URL : ${OIDC_DISCOVERY_INTERNAL_URL:-http://oidc:8888/.well-known/openid-configuration}
52
100
env_file :
@@ -58,14 +106,11 @@ services:
58
106
- ./src:/app/src
59
107
60
108
oidc :
109
+ profiles : ["pg", "os"]
61
110
image : ghcr.io/alukach/mock-oidc-server:latest
62
111
environment :
63
112
ISSUER : http://localhost:8888
64
113
SCOPES : item:create,item:update,item:delete,collection:create,collection:update,collection:delete
65
114
PORT : 8888
66
115
ports :
67
116
- " 8888:8888"
68
-
69
- networks :
70
- default :
71
- name : eoapi-network
0 commit comments