-
Notifications
You must be signed in to change notification settings - Fork 33
/
docker-compose.mysql.yaml
67 lines (64 loc) · 1.45 KB
/
docker-compose.mysql.yaml
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
#
# * This is an override to the default docker-compose.yaml file
#
version: '2.4'
services:
#
# Test a a specific archiva image.
#
archiva:
environment:
DB_TYPE: mysql
DB_HOST: mysql
DB_PORT: 3306
DB_USER: archiva
DB_PASSWORD: archiva
DB_NAME: archiva
entrypoint:
- bash
- -c
- while [ ! -e /shared/dbready ]; do sleep 1; done; exec /entrypoint.sh
volumes:
- type: volume
source: shared
target: /shared
#
# Create a MySQL container to show the mysql connection works.
#
mysql:
image: mysql:${MYSQL_TAG:-latest}
environment:
MYSQL_DATABASE: archiva
MYSQL_USER: archiva
MYSQL_PASSWORD: archiva
MYSQL_ROOT_PASSWORD: foobar
networks:
- container
#
# Wait for the mysql db to be read, then write out a file
#
mysql-watcher:
image: mysql:${MYSQL_TAG:-latest}
environment:
MYSQL_DATABASE: archiva
MYSQL_USER: archiva
MYSQL_PASSWORD: archiva
MYSQL_ROOT_PASSWORD: foobar
command:
- "bash"
- "-c"
- >
[ -e /shared/dbready ] && rm -v /shared/dbready;
while ! mysql --connect_timeout=1 -u root --password=foobar -h mysql -e "SELECT 1" archiva; do
sleep 1;
done;
echo "!! DB READY !!";
touch /shared/dbready;
volumes:
- type: volume
source: shared
target: /shared
networks:
- container
volumes:
shared: