-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathproduction.docker-compose.yml
78 lines (70 loc) · 1.79 KB
/
production.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
services:
web:
image: lextira/pureftpd-api
restart: ${SERVICES_RESTART}
depends_on:
- db
volumes:
- wellknown:/var/www/public/.well-known/
- ${TLS_CERT_DIR}/live/${CERTBOT_DOMAIN}/fullchain.pem:/opt/docker/etc/nginx/ssl/server.crt
- ${TLS_CERT_DIR}/live/${CERTBOT_DOMAIN}/privkey.pem:/opt/docker/etc/nginx/ssl/server.key
environment:
- WEB_DOCUMENT_ROOT=/var/www/public/
- WEB_DOCUMENT_INDEX=index.php
- WEB_ALIAS_DOMAIN=localhost
- APP_URL=${API_DOMAIN}
ports:
- 80:80
- 443:443
networks:
- pureftpd
ftp:
image: lextira/pureftpd-mysql
restart: ${SERVICES_RESTART}
depends_on:
- db
volumes:
- ${CONFIG_DIR}/pureftpd/:/etc/pureftpd/
- ${FTP_DATA_DIR}:/var/ftp-data/
- ${TLS_CERT_DIR}/live/${CERTBOT_DOMAIN}/fullchain.pem:/etc/ssl/private/fullchain.pem
- ${TLS_CERT_DIR}/live/${CERTBOT_DOMAIN}/privkey.pem:/etc/ssl/private/privkey.pem
ports:
- 20-21:20-21
- 30000-30099:30000-30099
networks:
- pureftpd
db:
image: mariadb:10.3
restart: ${SERVICES_RESTART}
volumes:
- ${DB_DATA_DIR}:/var/lib/mysql/
environment:
- MYSQL_RANDOM_ROOT_PASSWORD=yes
- MYSQL_DATABASE=pureftpd
- MYSQL_USER=pure
- MYSQL_PASSWORD=pure
networks:
- pureftpd
certbot:
image: certbot/certbot
restart: "no"
volumes:
- wellknown:/var/www/public/.well-known/
- ${TLS_CERT_DIR}:/etc/letsencrypt/
command: [
"certonly",
"--staging",
"--force-renewal",
"--noninteractive",
"--agree-tos",
"--webroot",
"--webroot-path", "/var/www/public/",
"-d ${CERTBOT_DOMAIN}",
"-m ${CERTBOT_EMAIL}"
]
networks:
pureftpd:
volumes:
db:
ftp:
wellknown: