
dsavell/grav!grav
Grav是一个快速、简单、灵活的文件型Web平台,无需安装。虽然Grav遵循与其他平面文件CMS平台类似的原则,但其设计理念与大多数平台不同。
Grav的底层架构采用成熟的一流技术构建,确保使用简单且易于扩展。其中一些关键技术包括:
我们利用Docker清单实现多平台支持。更多信息可参考Docker文档此处。
直接拉取dsavell/grav:admin会自动获取适合您架构的镜像,也可通过标签拉取特定架构镜像。
此镜像支持的架构如下:
| 架构 | 是否可用 | 标签 |
|---|---|---|
| x86-64 | ✅ | amd64-<版本标签> |
| arm64 | ❌ | arm64v8-<版本标签> |
| armhf | ❌ | arm32v7-<版本标签> |
此镜像提供多种版本,可通过标签获取。
| 标签 | 是否可用 | 描述 |
|---|---|---|
| admin | ✅ | 稳定的Grav核心+Admin插件版本 |
| core | ✅ | 稳定的Grav核心版本 |
| admin-<日期> | ✅ | 稳定的Grav核心+Admin插件版本+日期 |
| core-<日期> | ✅ | 稳定的Grav核心版本+日期 |
| admin-<版本标签> | ✅ | 固定的Grav核心+Admin插件版本 |
| core-<版本标签> | ✅ | 固定的Grav核心版本 |
| admin-<版本标签>-<日期> | ✅ | 固定的Grav核心+Admin插件版本+日期 |
| core-<版本标签>-<日期> | ✅ | 固定的Grav核心版本+日期 |
Web界面可通过http://<你的IP>访问。
更多信息请参阅官方文档此处。
以下是帮助您创建容器的示例代码片段。
yaml--- version: '2.1' services: grav: image: dsavell/grav:<TAG> container_name: grav restart: unless-stopped environment: - DUID=1000 - DGID=1000 - TZ=Europe/London # 可选 - GRAV_MULTISITE=subdirectory # 可选 - ROBOTS_DISALLOW=false # 可选 - GRAV_PLUGINS=devtools,precache # 可选 volumes: - /data/containers/grav/backup:/var/www/grav/backup - /data/containers/grav/logs:/var/www/grav/log - /data/containers/grav/user:/var/www/grav/user ports: - 80:80
bashdocker create \ --name=grav \ --restart unless-stopped \ -e DUID=1000 \ -e DGID=1000 \ -p 80:80 \ -e TZ=Europe/London `# 可选` \ -e GRAV_MULTISITE=subdirectory `# 可选` \ -e ROBOTS_DISALLOW=false `# 可选` \ -e GRAV_PLUGINS=devtools,precache `# 可选` \ -v /data/containers/grav/backup:/var/www/grav/backup \ -v /data/containers/grav/logs:/var/www/grav/logs \ -v /data/containers/grav/user:/var/www/grav/user \ dsavell/grav:<TAG> docker start grav
容器镜像通过运行时传递的参数进行配置(如上所示)。这些参数以冒号分隔,表示<外部>:<内部>。例如,-p 8080:80会将容器内的80端口暴露到主机IP的8080端口。
| 参数 | 功能 |
|---|---|
-p 80 | HTTP Web界面 |
-e DUID=1000 | 用户ID - 详见下文说明 |
-e DGID=1000 | 组ID - 详见下文说明 |
-e GRAV_MULTISITE=subdirectory | 部署Grav多站点(子目录)安装 |
-e ROBOTS_DISALLOW=false | 替换默认/robots.txt文件为阻止索引器的版本 |
-e TZ=Europe/London | 设置时区 |
-e GRAV_PLUGINS=devtools,precache | 自动安装额外插件(必须用逗号分隔) |
-v /var/www/backup | 存储Grav备份的位置 |
-v /var/www/logs | 存储Grav日志文件的位置 |
-v /var/www/user | 存储Grav内容的位置 |
使用卷(-v标志)时,主机OS和容器之间可能出现权限问题。通过指定用户PUID和组PGID可避免此问题。
确保主机上的任何卷目录都归您指定的用户所有,权限问题将迎刃而解。
此处PUID=1000和PGID=1000,可通过id user命令获取您的ID:
bash$ id username uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)
[***]master branch迁移至main分支。commitlint功能以验证提交消息格式。.editorconfig确保IDE间标准统一。.gitattributes确保Git CLI标准统一。GRAV_MULTISITE添加subdomain选项。NGINX_CLIENT_MAX_BODY_SIZE以指定nginx配置中的client_max_body_size。bin/grav/ scheduler -i检查。crontab -l检查。manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务