
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
This repository contains a production-ready, highly optimized Docker setup for Mautic 7, built directly from the official Mautic pre-compiled release ZIP archives.
Unlike older Mautic Docker setups, this architecture conforms to Mautic 7's container-native guidelines:
docker run)To run Mautic quickly for testing purposes against an existing external database:
bashdocker run -d \ --name mautic_web \ -p 8880:80 \ -e MAUTIC_DB_HOST=your-db-host \ -e MAUTIC_DB_USER=your-db-user \ -e MAUTIC_DB_PASSWORD=your-db-password \ -e MAUTIC_DB_DATABASE=mautic \ guerchele/mautic:7.1.2
docker compose)In production environments, Mautic 7 benefits heavily from separation of concerns. The included docker-compose.yml spins up:
db: MySQL 8.4 database.mautic_web: The web service running Apache.mautic_cron: Runs the crontab daemon (cron -f) to execute scheduled tasks (e.g., segment updates, campaign triggers) without blocking the web request path.mautic_worker: Executes Symfony Messenger queue consumers (bin/console messenger:consume) to process emails and page tracking hits asynchronously in real time.docker-compose.ymlyamlservices: db: image: 'mysql:8.4' environment: - 'MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_64_MYSQLROOT}' - 'MYSQL_DATABASE=${MYSQL_DATABASE:-mautic}' - 'MYSQL_USER=${SERVICE_USER_MYSQL}' - 'MYSQL_PASSWORD=${SERVICE_PASSWORD_64_MYSQL}' volumes: - 'mysql-data:/var/lib/mysql' healthcheck: test: 'mysqladmin ping --silent --user=${SERVICE_USER_MYSQL} --password=${SERVICE_PASSWORD_64_MYSQL}' start_period: 30s interval: 10s timeout: 5s retries: 5 mautic_web: image: 'guerchele/mautic:${MAUTIC_VERSION:-7.1.2}' ports: - '8880:80' volumes: - 'mautic_config:/var/www/html/app/config' - 'mautic_logs:/var/www/html/var/logs' - 'mautic_media_files:/var/www/html/media/files' - 'mautic_media_images:/var/www/html/media/images' - 'mautic_plugins:/var/www/html/plugins' environment: - SERVICE_FQDN_MAUTIC_80 - 'MAUTIC_DB_HOST=${MYSQL_HOST:-db}' - 'MAUTIC_DB_PORT=${MYSQL_PORT:-3306}' - 'MAUTIC_DB_DATABASE=${MYSQL_DATABASE:-mautic}' - 'MAUTIC_DB_USER=${SERVICE_USER_MYSQL}' - 'MAUTIC_DB_PASSWORD=${SERVICE_PASSWORD_64_MYSQL}' depends_on: db: condition: service_healthy healthcheck: test: ["CMD", "curl", "-f", "http://localhost"] interval: 15s timeout: 10s retries: 15 mautic_cron: image: 'guerchele/mautic:${MAUTIC_VERSION:-7.1.2}' volumes: - 'mautic_config:/var/www/html/app/config' - 'mautic_logs:/var/www/html/var/logs' - 'mautic_media_files:/var/www/html/media/files' - 'mautic_media_images:/var/www/html/media/images' - 'mautic_plugins:/var/www/html/plugins' environment: - 'MAUTIC_DB_HOST=${MYSQL_HOST:-db}' - 'MAUTIC_DB_PORT=${MYSQL_PORT:-3306}' - 'MAUTIC_DB_DATABASE=${MYSQL_DATABASE:-mautic}' - 'MAUTIC_DB_USER=${SERVICE_USER_MYSQL}' - 'MAUTIC_DB_PASSWORD=${SERVICE_PASSWORD_64_MYSQL}' command: ["cron", "-f"] depends_on: mautic_web: condition: service_healthy mautic_worker: image: 'guerchele/mautic:${MAUTIC_VERSION:-7.1.2}' volumes: - 'mautic_config:/var/www/html/app/config' - 'mautic_logs:/var/www/html/var/logs' - 'mautic_media_files:/var/www/html/media/files' - 'mautic_media_images:/var/www/html/media/images' - 'mautic_plugins:/var/www/html/plugins' environment: - 'MAUTIC_DB_HOST=${MYSQL_HOST:-db}' - 'MAUTIC_DB_PORT=${MYSQL_PORT:-3306}' - 'MAUTIC_DB_DATABASE=${MYSQL_DATABASE:-mautic}' - 'MAUTIC_DB_USER=${SERVICE_USER_MYSQL}' - 'MAUTIC_DB_PASSWORD=${SERVICE_PASSWORD_64_MYSQL}' command: ["php", "bin/console", "messenger:consume", "email", "hit", "--time-limit=3600"] depends_on: mautic_web: condition: service_healthy volumes: mysql-data: null mautic_config: null mautic_logs: null mautic_media_files: null mautic_media_images: null mautic_plugins: null
bash# Set version if you wish to override the default (7.1.2) export MAUTIC_VERSION=7.1.2 # Start all services docker compose up -d
| Variable | Description | Default |
|---|---|---|
MAUTIC_DB_HOST | Database host address | db |
MAUTIC_DB_PORT | Database connection port | 3306 |
MAUTIC_DB_DATABASE | Database name | mautic |
MAUTIC_DB_USER | Database user name | |
MAUTIC_DB_PASSWORD | Database user password |
Ensure you map volumes correctly to avoid data loss. Mautic 7 uses standard PHP structure:
mautic_config:/var/www/html/app/config - Mautic configuration settings (credentials, custom settings).mautic_logs:/var/www/html/var/logs - Log files.mautic_media_files:/var/www/html/media/files - Uploaded assets and files.mautic_media_images:/var/www/html/media/images - Image files.mautic_plugins:/var/www/html/plugins - Custom or premium Mautic plugins.Note: Named volumes on /var/www/html/vendor or /var/www/html/bin should NOT be mapped as volumes since Mautic 7 comes with precompiled dependencies inside the image.
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务