11services :
22 database :
3- image : " openml/test-database"
3+ profiles : ["python", "php", "all"]
4+ image : " openml/test-database:20240105"
45 container_name : " openml-test-database"
56 environment :
67 MYSQL_ROOT_PASSWORD : ok
78 ports :
89 - " 3306:3306"
10+ healthcheck :
11+ test : ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
12+ start_period : 30s
13+ start_interval : 1s
14+ timeout : 3s
15+ interval : 5s
16+ retries : 10
17+
18+ database-setup :
19+ profiles : ["python", "php", "all"]
20+ image : mysql
21+ container_name : " openml-test-database-setup"
22+ volumes :
23+ - ./docker/database/update.sh:/database-update.sh
24+ command : /bin/sh -c "/database-update.sh"
25+ depends_on :
26+ database :
27+ condition : service_healthy
928
1029 docs :
30+ profiles : ["all"]
1131 build :
1232 context : .
1333 dockerfile : docker/docs/Dockerfile
@@ -16,8 +36,35 @@ services:
1636 volumes :
1737 - .:/docs
1838
39+ elasticsearch :
40+ profiles : ["php", "all"]
41+ image : docker.elastic.co/elasticsearch/elasticsearch:6.8.23
42+ container_name : " openml-elasticsearch"
43+ platform : " linux/amd64"
44+ ports :
45+ - " 9200:9200" # also known as /es (nginx)
46+ - " 9300:9300"
47+ env_file : docker/elasticsearch/.env
48+ healthcheck :
49+ test : curl 127.0.0.1:9200/_cluster/health | grep -e "green"
50+ start_period : 30s
51+ start_interval : 5s
52+ timeout : 3s
53+ interval : 10s
54+ deploy :
55+ resources :
56+ limits :
57+ cpus : ' 1'
58+ memory : 1G
59+ reservations :
60+ cpus : ' 0.2'
61+ memory : 250M
62+
1963 php-api :
20- image : " openml/php-rest-api"
64+ profiles : ["php", "all"]
65+ image : " openml/php-rest-api:v1.2.2"
66+ container_name : " openml-php-rest-api"
67+ env_file : docker/php/.env
2168 ports :
2269 - " 8002:80"
2370 depends_on :
@@ -33,7 +80,8 @@ services:
3380 interval : 1m
3481
3582 python-api :
36- container_name : " python-api"
83+ profiles : ["python", "all"]
84+ container_name : " openml-python-rest-api"
3785 build :
3886 context : .
3987 dockerfile : docker/python/Dockerfile
@@ -43,20 +91,3 @@ services:
4391 - .:/python-api
4492 depends_on :
4593 - database
46-
47- elasticsearch :
48- image : docker.elastic.co/elasticsearch/elasticsearch:6.8.23
49- container_name : " elasticsearch"
50- ports :
51- - " 9200:9200"
52- - " 9300:9300"
53- environment :
54- - ELASTIC_PASSWORD=default
55- - discovery.type=single-node
56- - xpack.security.enabled=false
57- healthcheck :
58- test : curl 127.0.0.1:9200/_cluster/health | grep -e "green"
59- start_period : 30s
60- start_interval : 5s
61- timeout : 3s
62- interval : 1m
0 commit comments