
如果你使用 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 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
注意:这是https://hub.docker.com/_/monica%E7%9A%84%60arm32v7%60%E6%9E%B6%E6%9E%84%E6%9E%84%E5%BB%BA%E7%9A%84%E2%80%9C%E7%89%B9%E5%AE%9A%E6%9E%B6%E6%9E%84%E2%80%9D%E4%BB%93%E5%BA%93%E2%80%94%E2%80%94%E6%9B%B4%E5%A4%9A%E4%BF%A1%E6%81%AF%EF%BC%8C%E8%AF%B7%E5%8F%82%E8%A7%81%E5%AE%98%E6%96%B9%E9%95%9C%E5%83%8F%E6%96%87%E6%A1%A3%E4%B8%AD%E7%9A%84%E2%80%9C%E9%99%A4amd64%E5%A4%96%E7%9A%84%E6%9E%B6%E6%9E%84%EF%BC%9F%E2%80%9D%5Bhttps://github.com/docker-library/official-images#architectures-other-than-amd64%5D%E5%92%8C%E5%AE%98%E6%96%B9%E9%95%9C%E5%83%8FFAQ%E4%B8%AD%E7%9A%84%E2%80%9C%E9%95%9C%E5%83%8F%E6%BA%90%E5%9C%A8Git%E4%B8%AD%E6%9B%B4%E6%94%B9%E5%90%8E%E6%80%8E%E4%B9%88%E5%8A%9E%EF%BC%9F%E2%80%9D%5Bhttps://github.com/docker-library/faq#an-images-source-changed-in-git-now-what%5D%E3%80%82
-** 维护者 **:
https://github.com/monicahq/docker
-** 获取帮助的地方 **:
Docker社区Slack、Server Fault、Unix & Linux 或 Stack Overflow
Dockerfile链接https://github.com/monicahq/docker/blob/7ffc74385e243e2dac4d7013a3240c0ae1229f05/4/apache/Dockerfile
https://github.com/monicahq/docker/blob/7ffc74385e243e2dac4d7013a3240c0ae1229f05/4/fpm-alpine/Dockerfile
https://github.com/monicahq/docker/blob/7ffc74385e243e2dac4d7013a3240c0ae1229f05/4/fpm/Dockerfile
https://github.com/monicahq/docker/blob/7ffc74385e243e2dac4d7013a3240c0ae1229f05/5/apache/Dockerfile
https://github.com/monicahq/docker/blob/7ffc74385e243e2dac4d7013a3240c0ae1229f05/5/fpm-alpine/Dockerfile
https://github.com/monicahq/docker/blob/7ffc74385e243e2dac4d7013a3240c0ae1229f05/5/fpm/Dockerfile
-** 提交问题的地址 **:
https://github.com/monicahq/docker/issues?q=
-** 支持的架构 **:(https://github.com/docker-library/official-images#architectures-other-than-amd64)
https://hub.docker.com/r/amd64/monica/%E3%80%81https://hub.docker.com/r/arm32v5/monica/%E3%80%81https://hub.docker.com/r/arm32v6/monica/%E3%80%81https://hub.docker.com/r/arm32v7/monica/%E3%80%81https://hub.docker.com/r/arm64v8/monica/%E3%80%81https://hub.docker.com/r/i386/monica/%E3%80%81https://hub.docker.com/r/ppc64le/monica/%E3%80%81https://hub.docker.com/r/riscv64/monica/%E3%80%81https://hub.docker.com/r/s390x/monica/
-** 已发布镜像制品详情 **:
https://github.com/docker-library/repo-info/blob/master/repos/monica%EF%BC%88https://github.com/docker-library/repo-info/commits/master/repos/monica%EF%BC%89
(镜像元数据、传输大小等)
-** 镜像更新 **:
https://github.com/docker-library/official-images/issues?q=label%3Alibrary%2Fmonica
https://github.com/docker-library/official-images/blob/master/library/monica%EF%BC%88https://github.com/docker-library/official-images/commits/master/library/monica%EF%BC%89
-** 本描述的来源 **:
https://github.com/docker-library/docs/tree/master/monica%EF%BC%88https://github.com/docker-library/docs/commits/master/monica%EF%BC%89
Monica是一个优秀的开源个人关系管理系统,用于组织与亲友的互动。
!https://raw.githubusercontent.com/docker-library/docs/b962028212dbd77c9531dbcf8d5a81db79d4a735/monica/logo.svg?sanitize=true
您可以选择两种版本的镜像:
apache标签包含完整的Monica安装,带有Apache Web服务器。此标签也指向默认的latest标签。
fpm标签包含一个FastCGI进程,用于提供网页服务。此镜像应与作为代理的Web服务器(如Apache或Nginx)配合使用。
此镜像包含一个暴露80端口的Web服务器。运行容器:
consoledocker run --name some-monica -d -p 8080:80 arm32v7/monica
此镜像提供暴露9000端口的FastCGI服务器。您可能需要额外的Web服务器来代理请求到容器的9000端口(fpm端口)。运行容器:
consoledocker run --name some-monica -d -p 9000:9000 arm32v7/monica:fpm
您需要设置外部数据库。Monica目前支持MySQL/MariaDB数据库。您也可以链接数据库容器,例如--link my-mysql:db,然后在设置时使用db作为数据库主机。更多信息在Docker Compose部分。
为了持久化数据,您可能需要为数据库创建卷,对于Monica,需要保存/var/www/html/storage目录。
使用命名卷运行容器:
consoledocker run -d \ -v monica_data:/var/www/html/storage \ arm32v7/monica
与所有Laravel应用一样,php artisan命令对Monica非常有用。要在容器内运行命令:
consoledocker exec CONTAINER_ID php artisan COMMAND
对于Docker Compose:
consoledocker compose exec monica php artisan COMMAND
其中monica是compose.yaml文件中的服务名称。
Monica镜像将使用环境变量来设置应用。常见变量设置请参见https://github.com/monicahq/monica/blob/4.x/.env.example%E3%80%82
有关Docker Compose的示例,请参见https://github.com/monicahq/docker/blob/main/.examples%E3%80%82
此版本使用apache镜像并添加一个mysql容器。卷用于持久化数据。此设置不提供SSL加密,旨在运行在代理之后。
运行前确保为APP_KEY变量传入值。
创建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 volumes: - mysql:/var/lib/mysql restart: always volumes: data: name: data mysql: name: mysql
运行前为APP_KEY变量设置值。它应该是一个随机的32字符字符串。例如,可以复制echo -n 'base64:'; openssl rand -base64 32的输出:
运行
consoledocker compose up -d
等待所有迁移完成,然后从主机系统访问Monica:http://localhost:8080/。如果正常,添加第一个用户账户。
运行一次以下命令:
consoledocker compose exec app php artisan setup:production
使用FPM镜像时,需要另一个带有Web服务器的容器来代理HTTP请求。本示例使用nginx作为基本容器。
下载nginx的nginx.conf和Dockerfile文件。示例可在https://github.com/monicahq/docker/blob/main/.examples/full/fpm/web/%E6%89%BE%E5%88%B0%EF%BC%9A
shmkdir web curl -sSL https://raw.githubusercontent.com/monicahq/docker/main/.examples/full/web/nginx.conf -o web/nginx.conf curl -sSL https://raw.githubusercontent.com/monicahq/docker/main/.examples/full/web/Dockerfile -o web/Dockerfile
web容器镜像应在每次部署前构建: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 volumes: - mysql:/var/lib/mysql restart: always volumes: data: name: data mysql: name: mysql
运行前为APP_KEY变量设置值。它应该是一个随机的32字符字符串。例如,可以复制echo -n 'base64:'; openssl rand -base64 32的输出:
运行
consoledocker compose up -d
等待所有迁移完成,然后从主机系统访问Monica:http://localhost:8080/。如果正常,添加第一个用户账户。
运行一次以下命令:
consoledocker compose exec app php artisan setup:production
要将Monica实例暴露到互联网,重要的是设置环境变量APP_ENV=production。此时将强制使用https模式。
一种暴露Monica实例的方法是使用主机上具有SSL功能的代理Web服务器,通过反向代理实现。
有关带有SSL功能的代理Web服务器示例,请参见https://github.com/monicahq/docker/blob/main/.examples%E3%80%82
arm32v7/monica镜像有多种变体,每种设计用于特定场景。
arm32v7/monica:<version>这是默认镜像。如果不确定需求,可能需要使用此镜像。它既可用作临时容器(挂载源代码并启动容器以运行应用),也可用作构建其他镜像的基础。
arm32v7/monica:<version>-alpine此镜像基于流行的Alpine Linux项目,可在https://hub.docker.com/_/alpine%E4%B8%AD%E8%8E%B7%E5%8F%96%E3%80%82Alpine Linux比大多数发行版基础镜像小得多(约5MB),因此生成的镜像通常更精简。
当最终镜像大小是首要考虑因素时,此变体非常有用。需要注意的是,它使用musl libc而非glibc及相关库,因此软件可能因libc需求/假设而遇到问题。有关使用Alpine基础镜像的问题和优缺点讨论,请参见此Hacker News评论线程。
为最小化镜像大小,Alpine基础镜像通常不包含额外相关工具(如git或bash)。以此镜像为基础,可在自己的Dockerfile中添加所需工具(如不熟悉如何安装软件包,参见https://hub.docker.com/_/alpine/%E4%B8%AD%E7%9A%84%E7%A4%BA%E4%BE%8B%EF%BC%89%E3%80%82
查看此镜像中包含的软件的https://github.com/monicahq/monica/blob/main/LICENSE.md%E3%80%82
与所有Docker镜像一样,这些镜像可能还包含其他软件,可能受其他许可(如基础发行版中的Bash等,以及主要软件的任何直接或间接依赖)约束。
可在https://github.com/docker-library/repo-info/tree/master/repos/monica%E4%B8%AD%E6%89%BE%E5%88%B0%E4%B8%80%E4%BA%9B%E8%87%AA%E5%8A%A8%E6%A3%80%E6%B5%8B%E5%88%B0%E7%9A%84%E9%A2%9D%E5%A4%96%E8%AE%B8%E5%8F%AF%E4%BF%A1%E6%81%AF%E3%80%82
对于任何预构建镜像的使用,镜像用户有责任确保对本镜像的任何使用符合其中包含的所有软件的相关许可。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务