
如果你使用 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%60s390x%60%E6%9E%B6%E6%9E%84%E4%B8%93%E7%94%A8%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%9Chttps://github.com/docker-library/official-images#architectures-other-than-amd64%E2%80%9D%E5%92%8C%E5%AE%98%E6%96%B9%E9%95%9C%E5%83%8FFAQ%E4%B8%AD%E7%9A%84%E2%80%9Chttps://github.com/docker-library/faq#an-images-source-changed-in-git-now-what%E2%80%9D%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
-** 提交issues的地址 **:
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 s390x/monica
此镜像提供暴露9000端口的FastCGI服务器。您可能需要额外的Web服务器来代理请求到容器的9000端口(fpm端口)。运行容器:
consoledocker run --name some-monica -d -p 9000:9000 s390x/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 \ s390x/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
等待所有迁移完成,然后从主机系统访问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/web/
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
等待所有迁移完成,然后从主机系统访问http://localhost:8080/。确认正常后,添加首个用户账户。
运行以下命令一次:
consoledocker compose exec app php artisan setup:production
要将Monica实例暴露到互联网,需设置环境变量APP_ENV=production。此时https模式为必填。
暴露Monica实例的一种方式是使用主机上具有SSL功能的代理Web服务器,通过反向代理实现。
Docker Compose的示例配置见https://github.com/monicahq/docker/blob/main/.examples%EF%BC%8C%E5%B1%95%E7%A4%BA%E5%A6%82%E4%BD%95%E9%85%8D%E7%BD%AE%E5%B8%A6SSL%E5%8A%9F%E8%83%BD%E7%9A%84%E4%BB%A3%E7%90%86Web%E6%9C%8D%E5%8A%A1%E5%99%A8%E3%80%82
s390x/monica镜像有多种变体,适用于不同场景。
s390x/monica:<version>这是默认镜像。若不确定需求,建议使用此版本。设计用于临时容器(挂载源代码并启动容器运行应用)或作为构建其他镜像的基础。
s390x/monica:<version>-alpine此镜像基于流行的Alpine Linux项目,来自https://hub.docker.com/_/alpine%E3%80%82Alpine Linux比大多数发行版基础镜像小得多(约5MB),因此生成的镜像更精简。
当最终镜像大小是首要考虑因素时,此变体非常有用。需注意它使用musl libc而非glibc及相关库,因此软件可能因libc需求/假设深度而出现问题。更多讨论见此Hacker News评论线程。
为最小化镜像大小,Alpine-based镜像通常不包含额外相关工具(如git或bash)。以此镜像为基础,可在自己的Dockerfile中添加所需工具(若不熟悉,见https://hub.docker.com/_/alpine/%E7%9A%84%E5%AE%89%E8%A3%85%E5%8C%85%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%E3%80%82
对于任何预构建镜像的使用,用户有责任确保镜像的使用符合其中所有软件的相关许可。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务