MISP/docker-compose.yml

95 lines
2.3 KiB
YAML
Raw Normal View History

2023-04-04 17:09:21 +02:00
version: "3.9"
services:
misp:
2023-04-04 17:09:21 +02:00
image: misp3/php:8.2-fpm
build:
context: .
dockerfile: docker/misp/Dockerfile
target: prod
tty: true
2023-04-04 17:09:21 +02:00
restart: unless-stopped
environment:
MISP_DB: ${MYSQL_DATABASE:-misp}
MISP_DB_USER: ${MYSQL_USER:-misp}
MISP_DB_PASSWORD: ${MYSQL_PASSWORD}
ADMIN_ORG: ${ADMIN_ORG}
ADMIN_EMAIL: ${ADMIN_EMAIL}
ADMIN_INITIAL_PASSWORD: ${ADMIN_INITIAL_PASSWORD}
ADMIN_USER_API_KEY: ${ADMIN_USER_API_KEY}
GPG_PASSPHRASE: ${GPG_PASSPHRASE}
2023-04-04 17:09:21 +02:00
volumes:
- ./docker/misp/config/app_local.php:/var/www/html/config/app_local.php:delegated
- ./docker/misp/logs:/var/www/html/logs:delegated
entrypoint: /usr/local/bin/entrypoint.sh
2023-04-04 17:09:21 +02:00
networks:
- backend-network
- frontend-network
depends_on:
- db
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:9000" ]
interval: 30s
timeout: 10s
retries: 5
webserver:
2023-04-04 17:09:21 +02:00
image: misp3/nginx
build:
context: .
dockerfile: docker/nginx/Dockerfile
restart: unless-stopped
2023-04-04 17:09:21 +02:00
ports:
- "80:80"
- "443:443"
volumes:
- ./docker/nginx/certs:/etc/nginx/certs:delegated
2023-04-04 17:09:21 +02:00
entrypoint: /usr/local/bin/entrypoint.sh
depends_on:
- misp
2023-04-04 17:09:21 +02:00
networks:
- frontend-network
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost" ]
interval: 30s
timeout: 10s
retries: 5
2023-04-04 17:09:21 +02:00
db:
image: mariadb:10
restart: unless-stopped
2023-04-04 17:09:21 +02:00
environment:
MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE:-misp}
MYSQL_USER: ${MYSQL_USER:-misp}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
2023-04-04 17:09:21 +02:00
volumes:
- db_data:/var/lib/postgresql/data
- ./docker/db/misp-2.4.169.sql:/docker-entrypoint-initdb.d/init.sql
2023-04-04 17:09:21 +02:00
networks:
- backend-network
healthcheck:
# test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-p${MYSQL_ROOT_PASSWORD}"]
test: ["CMD", "mysql", "-u", "${MYSQL_USER}", "-p${MYSQL_PASSWORD}", "-e", "SHOW DATABASES LIKE '${MYSQL_DATABASE}';"]
interval: 10s
timeout: 5s
retries: 3
2023-04-04 17:09:21 +02:00
redis:
image: redis:7
ports:
- "6379:6379"
networks:
- backend-network
networks:
frontend-network:
driver: bridge
backend-network:
driver: bridge
volumes:
db_data: