
Monica 团队
以下是 Monica 镜像的常用标签及对应的 Dockerfile 源码链接:
4.1.2-apache、4.1-apache、4-apache、apache、4.1.2、4.1、4、latest
Dockerfile
4.1.2-fpm-alpine、4.1-fpm-alpine、4-fpm-alpine、fpm-alpine
Dockerfile
4.1.2-fpm、4.1-fpm、4-fpm、fpm
Dockerfile
5.0.0-beta.5-apache、5.0.0-beta-apache、5.0-apache
Dockerfile
5.0.0-beta.5-fpm-alpine、5.0.0-beta-fpm-alpine、5.0-fpm-alpine
Dockerfile
5.0.0-beta.5-fpm、5.0.0-beta-fpm、5.0-fpm
Dockerfile
(更多信息见 ***说明)
amd64、arm32v5、arm32v6、arm32v7、arm64v8、i386、ppc64le、riscv64、s390x
(各架构镜像地址可通过链接查看,如 amd64)
包括镜像元数据、传输大小等,可查看 repo-info 仓库的 repos/monica/ 目录(历史记录)
library/monica labellibrary/monica file(历史记录)docs 仓库的 monica/ 目录(历史记录)
Monica 是一款优秀的开源个人关系管理系统,可帮助你整理与亲友的互动记录。
!logo
Monica 镜像提供两种版本,可根据需求选择:
apache 标签:包含完整的 Monica 安装及 Apache Web 服务器,也是默认 latest 标签指向的版本。fpm 标签:仅包含 FastCGI 进程(用于处理网页请求),需配合 Apache 或 Nginx 等反向代理服务器使用。该镜像内置 Web 服务器,暴露 80 端口。运行容器命令如下:
consoledocker run --name some-monica -d -p 8080:80 monica
该镜像运行 FastCGI 服务器,暴露 9000 端口,需搭配反向代理服务器。运行容器命令如下:
consoledocker run --name some-monica -d -p 9000:9000 monica:fpm
Monica 需依赖外部数据库(支持 MySQL/MariaDB)。可通过 --link 参数链接数据库容器(如 --link my-mysql:db),并在配置时将数据库主机设为 db。详细配置可参考下文 Docker Compose 部分。
为避免数据丢失,需为数据库和 Monica 的 /var/www/html/storage 目录挂载卷。例如,使用命名卷保存 Monica 数据:
consoledocker run -d \ -v monica_data:/var/www/html/storage \ monica
作为 Laravel 应用,php artisan 命令对 Monica 管理非常重要。在容器内执行命令的方式如下:
直接使用容器 ID:
consoledocker exec 容器ID php artisan 命令
使用 Docker Compose(假设服务名为 monica):
consoledocker compose exec monica php artisan 命令
Monica 镜像通过环境变量进行配置,常用变量可参考 Monica ***文档(.env.example 文件)。
可参考 示例目录 中的 Docker Compose 配置,以下为两种常用场景的配置步骤。
该配置使用 apache 镜像,并搭配 MariaDB 数据库容器,通过卷实现数据持久化。注意:此配置不含 SSL 加密,建议用于反向代理后端。
创建 compose.yaml 文件,内容如下:
yamlservices: app: image: monica depends_on: - db ports: - 8080:80 environment: - APP_KEY= # 生成方法:运行 `echo -n 'base64:'; openssl rand -base64 32` - DB_HOST=db - DB_USERNAME=monica - DB_PASSWORD=secret # 建议替换为自定义密码 volumes: - data:/var/www/html/storage restart: always db: image: mariadb:11 environment: - MYSQL_RANDOM_ROOT_PASSWORD=true - MYSQL_DATABASE=monica - MYSQL_USER=monica - MYSQL_PASSWORD=secret # 与上方 DB_PASSWORD 保持一致 volumes: - mysql:/var/lib/mysql restart: always volumes: data: name: data mysql: name: mysql
生成 APP_KEY:
执行命令 echo -n 'base64:'; openssl rand -base64 32,将输出结果填入 APP_KEY 字段。
启动服务:
consoledocker compose up -d
等待数据库迁移完成后,通过 `[***] 访问 Monica,确认正常后可创建首个用户。
执行初始化命令(仅需一次):
consoledocker compose exec app php artisan setup:production
FPM 镜像需搭配 Web 服务器(如 Nginx)处理 HTTP 请求。以下为 Nginx + FPM + MariaDB 的配置示例。
准备 Nginx 配置文件:
创建 web 目录,下载示例配置:
shmkdir web curl -sSL [***] -o web/nginx.conf curl -sSL [***] -o web/Dockerfile
构建 Nginx 镜像:docker compose build(每次部署前建议重新构建)。
创建 compose.yaml 文件,内容如下:
yamlservices: app: image: monica:fpm depends_on: - db environment: - APP_KEY= # 生成方法同上:`echo -n 'base64:'; openssl rand -base64 32` - DB_HOST=db - DB_USERNAME=monica - DB_PASSWORD=secret # 自定义密码 volumes: - data:/var/www/html/storage restart: always web: build: ./web ports: - 8080:80 depends_on: - app volumes: - data:/var/www/html/storage:ro # 只读挂载 restart: always db: image: mariadb:11 environment: - MYSQL_RANDOM_ROOT_PASSWORD=true - MYSQL_DATABASE=monica - MYSQL_USER=monica - MYSQL_PASSWORD=secret # 与上方 DB_PASSWORD 一致 volumes: - mysql:/var/lib/mysql restart: always volumes: data: name: data mysql: name: mysql
生成并填入 APP_KEY(同 Apache 版本步骤 2)。
启动服务:
consoledocker compose up -d
等待数据库迁移完成后,通过 `[***] 访问 Monica。
执行初始化命令(仅需一次):
consoledocker compose exec app php artisan setup:production
若需通过互联网访问 Monica,需设置环境变量 APP_ENV=production,此时强制启用 HTTPS。
Monica 镜像提供多种变体,适用于不同场景:
monica:<version>默认镜像,包含完整依赖及 Apache 服务器,适合快速部署。
monica:<version>-alpine基于 Alpine Linux 的轻量级镜像,体积更小(约 5MB 基础镜像)。特点:
git、bash 等工具,需在自定义 Dockerfile 中额外安装。monica/ 目录。使用前请确保遵守所有包含软件的许可证要求。
来自真实用户的反馈,见证轩辕镜像的优质服务
免费版仅支持 Docker Hub 加速,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。
免费版仅支持 docker.io;专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等。
当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。
通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。
先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。
使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
在 Linux 系统配置镜像加速服务
在 Docker Desktop 配置镜像加速
Docker Compose 项目配置加速
Kubernetes 集群配置 Containerd
在宝塔面板一键配置镜像加速
Synology 群晖 NAS 配置加速
飞牛 fnOS 系统配置镜像加速
极空间 NAS 系统配置加速服务
爱快 iKuai 路由系统配置加速
绿联 NAS 系统配置镜像加速
QNAP 威联通 NAS 配置加速
Podman 容器引擎配置加速
HPC 科学计算容器配置加速
ghcr、Quay、nvcr 等镜像仓库
无需登录使用专属域名加速
需要其他帮助?请查看我们的 常见问题 或 官方QQ群: 13763429