Skip to content

Commit ede5276

Browse files
author
Tik
committed
added docker-compose to setup docker container for development.
1 parent 2f16c19 commit ede5276

1 file changed

Lines changed: 68 additions & 0 deletions

File tree

docker/docker-compose.yaml

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
name: dev-testing-env
2+
3+
services:
4+
api:
5+
build:
6+
context: ../
7+
dockerfile: ./docker/Dockerfile
8+
container_name: pydggsapi_developement
9+
ports:
10+
- "8080:8000"
11+
volumes:
12+
- dggs_api_config:/opt/local/src/pydggsapi/config
13+
- test_data:/opt/local/src/pydggsapi/testing_data
14+
develop:
15+
watch:
16+
- action: sync
17+
path: <abs path to the developement source files>
18+
target: /opt/local/src/pydggsapi/pydggsapi
19+
command: [
20+
"sh", "-c",
21+
"uvicorn pydggsapi.api:app \
22+
--reload \
23+
--host ${PYDGGSAPI_HOST:-0.0.0.0} \
24+
--port ${PYDGGSAPI_PORT:-8000} \
25+
--workers ${PYDGGSAPI_WORKERS:-8} \
26+
--log-level ${PYDGGSAPI_LOG_LEVEL:-info} \
27+
"
28+
]
29+
30+
31+
# --- TEST AUTOMATION RUNNER ---
32+
test-runner:
33+
profiles:
34+
- testing
35+
build:
36+
context: .
37+
dockerfile: Dockerfile.dev
38+
container_name: integration_tests
39+
environment:
40+
- NODE_ENV=testing
41+
- API_URL=http://api:8080
42+
command: npm run test:integration
43+
volumes:
44+
- .:/app
45+
- /app/node_modules
46+
depends_on:
47+
api:
48+
condition: service_started
49+
50+
volumes:
51+
dggs_api_config:
52+
driver: local
53+
driver_opts:
54+
type: none
55+
o: bind
56+
device: <path to DGGS_API_CONFIG file>
57+
test_data:
58+
driver: local
59+
driver_opts:
60+
type: none
61+
o: bind
62+
device: <path to Collections>
63+
pytest_testcases:
64+
driver: local
65+
driver_opts:
66+
type: none
67+
o: bind
68+
device: <path to pytest>

0 commit comments

Comments
 (0)