-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.dev.yml
More file actions
128 lines (128 loc) · 3.15 KB
/
docker-compose.dev.yml
File metadata and controls
128 lines (128 loc) · 3.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
# AUTOGENERATED from nix/terranix/docker-artifacts.nix
{
"networks": {
"ml_local": {
"driver": "bridge",
"name": "ml_local"
}
},
"services": {
"dev": {
"build": {
"context": ".",
"dockerfile": "Dockerfile"
},
"command": "bash -lc \"uv sync --frozen && bash\"",
"depends_on": {
"mlflow": {
"condition": "service_started"
},
"postgres": {
"condition": "service_healthy"
},
"traefik": {
"condition": "service_started"
}
},
"environment": {
"AWS_ACCESS_KEY_ID": "test",
"AWS_DEFAULT_REGION": "us-east-1",
"AWS_SECRET_ACCESS_KEY": "test",
"MLFLOW_ARTIFACTS_DESTINATION": "s3://mlflow",
"MLFLOW_BACKEND_STORE_URI": "postgresql://mlflow:mlflow@postgres:5432/mlflow",
"MLFLOW_S3_ENDPOINT_URL": "http://floci:4566",
"MLFLOW_TRACKING_URI": "http://traefik/mlflow"
},
"networks": [
"ml_local"
],
"stdin_open": true,
"tty": true,
"volumes": [
"./:/workspace"
],
"working_dir": "/workspace"
},
"mlflow": {
"command": [
"mlflow",
"server",
"--host",
"0.0.0.0",
"--port",
"5000",
"--backend-store-uri",
"postgresql://mlflow:mlflow@postgres:5432/mlflow",
"--artifacts-destination",
"s3://mlflow"
],
"depends_on": {
"postgres": {
"condition": "service_healthy"
}
},
"environment": {
"AWS_ACCESS_KEY_ID": "test",
"AWS_DEFAULT_REGION": "us-east-1",
"AWS_SECRET_ACCESS_KEY": "test",
"MLFLOW_S3_ENDPOINT_URL": "http://floci:4566"
},
"image": "ghcr.io/mlflow/mlflow:v2.14.2",
"labels": {
"traefik.enable": "true",
"traefik.http.routers.mlflow.rule": "PathPrefix(`/mlflow`)",
"traefik.http.routers.mlflow.service": "mlflow-service",
"traefik.http.services.mlflow-service.loadbalancer.server.port": "5000"
},
"networks": [
"ml_local"
]
},
"postgres": {
"environment": {
"POSTGRES_DB": "mlflow",
"POSTGRES_PASSWORD": "mlflow",
"POSTGRES_USER": "mlflow"
},
"healthcheck": {
"interval": "5s",
"retries": 20,
"test": [
"CMD-SHELL",
"pg_isready -U $${POSTGRES_USER}"
],
"timeout": "3s"
},
"image": "postgres:16-alpine",
"networks": [
"ml_local"
],
"ports": [
"5432:5432"
]
},
"traefik": {
"command": [
"--api.insecure=true",
"--api.dashboard=true",
"--entrypoints.web.address=:80",
"--entrypoints.websecure.address=:443",
"--providers.docker=true",
"--providers.docker.exposedbydefault=false",
"--providers.docker.network=ml_local"
],
"image": "traefik:v3.1.1",
"networks": [
"ml_local"
],
"ports": [
"80:80",
"443:443",
"8080:8080"
],
"volumes": [
"/var/run/docker.sock:/var/run/docker.sock"
]
}
}
}