-
Notifications
You must be signed in to change notification settings - Fork 39
/
docker-compose.yml
110 lines (106 loc) · 2.37 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
# Create a development server via `docker compose -p elefant up -d`
version: '3.4'
networks:
app-network:
driver: "bridge"
volumes:
mysql-db:
x-common-variables: &common-variables
ELEFANT_DB_DRIVER: mysql
ELEFANT_DB_HOST: "mysql:3306"
ELEFANT_DB_NAME: www_db
ELEFANT_DB_USER: db_user
ELEFANT_DB_PASS: youll_never_guess
ELEFANT_DOMAIN: "www.elefant.lo"
ELEFANT_DEFAULT_PASS: log_me_in
ELEFANT_SESSION_HANDLER: "redis:tcp://redis:6379?timeout=0.5"
services:
mysql:
image: mariadb:10.5.8
environment:
MYSQL_ROOT_PASSWORD: super_secret_shh
MYSQL_DATABASE: www_db
MYSQL_USER: db_user
MYSQL_PASSWORD: youll_never_guess
ports:
- "3306:3306"
networks:
- app-network
volumes:
- mysql-db:/var/lib/mysql
restart: always
redis:
image: "redis:alpine"
ports:
- "6379:6379"
networks:
- app-network
redis-commander:
image: rediscommander/redis-commander:latest
restart: always
environment:
REDIS_HOSTS: "local:redis:6379"
HTTP_USER: redis_admin
HTTP_PASSWORD: redis_pass
ports:
- "8081:8081"
networks:
- app-network
beanstalkd:
image: schickling/beanstalkd
ports:
- "11300:11300"
networks:
- app-network
beanstalk-console:
image: schickling/beanstalkd-console
environment:
AUTH: enable
AUTH_USERNAME: bean_admin
AUTH_PASSWORD: bean_pass
depends_on:
- beanstalkd
ports:
- "2080:2080"
networks:
- app-network
www:
image: elefant-dev
environment: *common-variables
depends_on:
- mysql
- redis
- beanstalkd
volumes:
- .:/www
networks:
- app-network
stdin_open: true # docker run -i
tty: true # docker run -t
worker:
image: elefant-worker
environment: *common-variables
depends_on:
- mysql
- redis
- beanstalkd
volumes:
- .:/www
networks:
- app-network
stdin_open: true # docker run -i
tty: true # docker run -t
proxy:
image: nginx:1.19.10-alpine
environment: *common-variables
depends_on:
- www
volumes:
- ./.docker/nginx-proxy.conf:/etc/nginx/nginx.conf
- ./.docker/templates:/etc/nginx/templates
- ./.docker/certs:/etc/nginx/certs
ports:
- 80:80
- 443:443
networks:
- app-network