main
Raw Download raw file
 1version: '3.2'
 2
 3services:
 4  ctfd:
 5    image: ctfd/ctfd
 6    user: root
 7    restart: always
 8    ports:
 9      - "8000:8000"
10    environment:
11      - UPLOAD_FOLDER=/var/uploads
12      - DATABASE_URL=mysql+pymysql://ctfd:ctfd@db/ctfd
13      - REDIS_URL=redis://cache:6379
14      - WORKERS=1
15      - LOG_FOLDER=/var/log/CTFd
16      - ACCESS_LOG=-
17      - ERROR_LOG=-
18    volumes:
19      - ./data/CTFd/logs:/var/log/CTFd
20      - ./data/CTFd/uploads:/var/uploads
21    depends_on:
22      - db
23    networks:
24        - default
25        - internal
26
27  db:
28    image: mariadb:10.4.12
29    restart: always
30    environment:
31      - MYSQL_ROOT_PASSWORD=ctfd
32      - MYSQL_USER=ctfd
33      - MYSQL_PASSWORD=ctfd
34      - MYSQL_DATABASE=ctfd
35    volumes:
36      - ./data/mysql:/var/lib/mysql
37    networks:
38        - internal
39    # This command is required to set important mariadb defaults
40    command: [mysqld, --character-set-server=utf8mb4, --collation-server=utf8mb4_unicode_ci, --wait_timeout=28800, --log-warnings=0]
41
42  cache:
43    image: redis:4
44    restart: always
45    volumes:
46      - ./data/redis:/data
47    networks:
48        - internal
49
50networks:
51    default:
52    internal:
53        internal: true