-
Notifications
You must be signed in to change notification settings - Fork 3k
/
docker-compose.minio.yml
73 lines (71 loc) · 2.28 KB
/
docker-compose.minio.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
x-allow-minio: &allow-minio
depends_on:
- minio
volumes:
- ./tests/allow_minio.sh:/etc/cvat/init.d/allow_minio.sh:ro
services:
cvat_server: *allow-minio
cvat_worker_export: *allow-minio
cvat_worker_import: *allow-minio
minio:
image: quay.io/minio/minio:RELEASE.2022-09-17T00-09-45Z
hostname: minio
restart: always
command: server /data --console-address ":9001"
expose:
- "9000"
- "9001"
ports:
- 9000:9000
- 9001:9001
environment:
MINIO_ROOT_USER: "minio_access_key"
MINIO_ROOT_PASSWORD: "minio_secret_key"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:9000/minio/health/live"]
interval: 30s
timeout: 20s
retries: 3
networks:
cvat:
aliases:
- minio
mc:
image: minio/mc:RELEASE.2022-09-16T09-16-47Z
depends_on:
- minio
environment:
MC_PATH: "/usr/bin/mc"
MINIO_HOST: "http://minio:9000"
MINIO_ACCESS_KEY: "minio_access_key"
MINIO_SECRET_KEY: "minio_secret_key"
MINIO_ALIAS: "local_minio"
PRIVATE_BUCKET: "private"
PUBLIC_BUCKET: "public"
TEST_BUCKET: "test"
IMPORT_EXPORT_BUCKET: "importexportbucket"
volumes:
- ./tests/cypress/e2e/actions_tasks/assets/case_65_manifest/:/storage
networks:
- cvat
entrypoint: >
/bin/sh -c "
$${MC_PATH} config host add --quiet --api s3v4 $${MINIO_ALIAS} $${MINIO_HOST} $${MINIO_ACCESS_KEY} $${MINIO_SECRET_KEY};
$${MC_PATH} mb $${MINIO_ALIAS}/$${PRIVATE_BUCKET} $${MINIO_ALIAS}/$${PUBLIC_BUCKET} $${MINIO_ALIAS}/$${TEST_BUCKET} $${MINIO_ALIAS}/$${IMPORT_EXPORT_BUCKET};
for BUCKET in $${MINIO_ALIAS}/$${PRIVATE_BUCKET} $${MINIO_ALIAS}/$${PUBLIC_BUCKET} $${MINIO_ALIAS}/$${TEST_BUCKET} $${MINIO_ALIAS}/$${IMPORT_EXPORT_BUCKET};
do
if [ $${BUCKET} == $${MINIO_ALIAS}/$${PRIVATE_BUCKET} ]
then
FULL_PATH=$${BUCKET}/'sub'
else
FULL_PATH=$${BUCKET}
fi
$${MC_PATH} cp --recursive /storage/ $${FULL_PATH};
for i in 1 2;
do
$${MC_PATH} cp /storage/manifest.jsonl $${FULL_PATH}/manifest_$${i}.jsonl;
done;
done;
$${MC_PATH} policy set public $${MINIO_ALIAS}/$${PUBLIC_BUCKET};
exit 0;
"