forked from Simo-C3/DevSecOpsThon2024
-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yml
executable file
·148 lines (143 loc) · 3.59 KB
/
docker-compose.yml
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
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
#test nakamura
services:
ubuntu:
build:
context: .
dockerfile: /home/teamF/ubuntu/Dockerfile
# container_nameは命名規則に従ってください。"/"はエラーになるため使用不可。大文字可。
container_name: teamF_ubuntu
hostname: base
stdin_open: true
#
# volumeアタッチする場合
volumes:
- /home/teamF
- /home/teamF/src:/llm
- /home/teamF/model:/llm/model
#
# ポートフォワードする場合
ports:
- '49800:80'
- '49801:443'
- '49888:8501'
# GPUをコンテナで利用する場合は以下を設定してください。おまじない。
env_file:
- .env
networks:
- teamF-network
depends_on:
- standalone
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [ gpu ]
ollama:
image: ollama/ollama
container_name: teamF_ollama
runtime: nvidia # NVIDIA GPUを使用するためにruntimeを設定
volumes:
- ollama:/root/.ollama
ports:
- "49802:11434"
# environment:
# - NVIDIA_VISIBLE_DEVICES=0
# - NVIDIA_DRIVER_CAPABILITIES=compute,utility
command: serve
restart: always
tty: true
networks:
- teamF-network
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [ gpu ]
etcd:
container_name: teamF_milvus-etcd
image: quay.io/coreos/etcd:v3.5.5
environment:
- ETCD_AUTO_COMPACTION_MODE=revision
- ETCD_AUTO_COMPACTION_RETENTION=1000
- ETCD_QUOTA_BACKEND_BYTES=4294967296
- ETCD_SNAPSHOT_COUNT=50000
ports:
- "49894:2379"
volumes:
- ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/etcd:/etcd
command: etcd -advertise-client-urls=http://127.0.0.1:2379 -listen-client-urls http://0.0.0.0:2379 --data-dir /etcd
networks:
- teamF-network
healthcheck:
test: [ "CMD", "etcdctl", "endpoint", "health" ]
interval: 30s
timeout: 20s
retries: 3
minio:
container_name: teamF_milvus-minio
image: minio/minio:RELEASE.2023-03-20T20-16-18Z
environment:
MINIO_ACCESS_KEY: minioadmin
MINIO_SECRET_KEY: minioadmin
ports:
- "49891:9001"
- "49890:9000"
volumes:
- ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/minio:/minio_data
command: minio server /minio_data --console-address ":9001"
networks:
- teamF-network
healthcheck:
test:
[
"CMD",
"curl",
"-f",
"http://localhost:9000/minio/health/live"
]
interval: 30s
timeout: 20s
retries: 3
standalone:
container_name: teamF_milvus-standalone
image: milvusdb/milvus:v2.3.8
command: [ "milvus", "run", "standalone" ]
security_opt:
- seccomp:unconfined
environment:
ETCD_ENDPOINTS: etcd:2379
MINIO_ADDRESS: minio:9000
volumes:
- ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus
healthcheck:
test: [ "CMD", "curl", "-f", "http://minio:9001/healthz" ]
interval: 30s
start_period: 90s
timeout: 20s
retries: 3
ports:
- "49892:19530"
- "49893:9091"
networks:
- teamF-network
depends_on:
- "etcd"
- "minio"
nginx:
container_name: teamF-nginx
build: ./nginx
networks:
- teamF-network
# volumes:
# - /home/teamF/nginx/keys:/etc/nginx/ssl:ro
ports:
- 49895:80
- 49896:443
volumes:
ollama:
networks:
teamF-network: