feat: SuiteCRM Docker + compose + CI/CD
Some checks failed
Docker Build & Push / build-and-push (push) Has been cancelled

This commit is contained in:
root
2026-05-24 14:12:23 +02:00
parent 21ea4ea9be
commit 30905b15d4
8 changed files with 442 additions and 2 deletions

87
docker-compose.yml Normal file
View File

@@ -0,0 +1,87 @@
# SuiteCRM Docker Compose Environment
# ====================================
# Start: docker compose up -d
# Stop: docker compose down
# Data persists in Docker volumes unless you run: docker compose down -v
services:
# --- SuiteCRM Application ---
suitecrm:
build:
context: .
dockerfile: Dockerfile
image: suitecrm:7.15.1
container_name: suitecrm-app
restart: unless-stopped
ports:
- "${SUITECRM_PORT:-8080}:80"
environment:
- DATABASE_HOST=mariadb
- DATABASE_PORT=3306
- DATABASE_NAME=${MYSQL_DATABASE:-suitecrm}
- DATABASE_USER=${MYSQL_USER:-suitecrm}
- DATABASE_PASSWORD=${MYSQL_PASSWORD:-suitecrm_secret}
- SUITECRM_SITE_URL=${SUITECRM_SITE_URL:-http://localhost:8080}
volumes:
- suitecrm_data:/var/www/html/upload
- suitecrm_custom:/var/www/html/custom
- suitecrm_config:/var/www/html/config_override.php
depends_on:
mariadb:
condition: service_healthy
networks:
- suitecrm-net
# --- MariaDB Database ---
mariadb:
image: mariadb:10.11
container_name: suitecrm-db
restart: unless-stopped
ports:
- "${MYSQL_PORT:-3307}:3306"
environment:
- MARIADB_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD:-root_secret}
- MARIADB_DATABASE=${MYSQL_DATABASE:-suitecrm}
- MARIADB_USER=${MYSQL_USER:-suitecrm}
- MARIADB_PASSWORD=${MYSQL_PASSWORD:-suitecrm_secret}
volumes:
- mariadb_data:/var/lib/mysql
command:
- --character-set-server=utf8mb4
- --collation-server=utf8mb4_unicode_ci
- --max-allowed-packet=64M
- --innodb-buffer-pool-size=256M
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 10s
timeout: 5s
retries: 5
networks:
- suitecrm-net
# --- Redis Cache (optional) ---
redis:
image: redis:7-alpine
container_name: suitecrm-redis
restart: unless-stopped
ports:
- "${REDIS_PORT:-6379}:6379"
volumes:
- redis_data:/data
command: redis-server --appendonly yes --maxmemory 256mb --maxmemory-policy allkeys-lru
networks:
- suitecrm-net
profiles:
- full
- redis
volumes:
suitecrm_data:
suitecrm_custom:
suitecrm_config:
mariadb_data:
redis_data:
networks:
suitecrm-net:
driver: bridge