自托管 Grist 关系电子表格,Docker 容器部署全过程记录 📅 2026/8/4 20:42:09 【Docker项目实战】使用Docker部署Grist关系型电子表格工具一、Grist介绍1.1 Grist简介1.2 主要特点二、本次实践规划2.1 本地环境规划2.2 本次实践介绍三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本四、下载Grist镜像五、部署Grist应用5.1 创建部署目录5.2 docker-cli部署可选5.3 编辑部署文件5.4 创建Grist容器5.5 查看Grist容器状态5.6 检查Grist容器日志六、访问Grist服务6.1 访问Grist初始页6.2 设置系统语言七、总结一、Grist介绍1.1 Grist简介Grist是一款创新的数据管理工具它将电子表格的直观易用性与数据库的强大功能相结合为用户提供了创建和管理复杂数据集的能力。它允许个人和团队以一种既灵活又结构化的方式组织信息而无需编写代码或具备专业的数据库管理技能。Grist的设计旨在简化数据输入、管理和分析过程使得即使是没有技术背景的用户也能够快速上手并高效地处理数据。1.2 主要特点关系型电子表格用户可以在不同的表之间建立关联就像在传统数据库中一样但操作起来却如同使用普通电子表格那样简单直接。无需编程Grist内置了丰富的功能让用户可以通过点击和简单的配置来完成任务而不需要任何编程知识。实时协作支持多用户同时在线编辑同一个文档所有更改都会即时同步给其他参与者提高了团队合作效率。强大的数据可视化提供了多种图表类型如柱状图、折线图等以及过滤器等功能帮助用户更好地理解和展示数据。模板库内置了多种行业专用模板例如项目管理、库存跟踪、客户关系管理等方便用户快速启动新项目。API接口对于更高级的需求Grist还提供了REST API接口允许开发者集成外部服务或者自动化工作流程。移动端支持为了满足随时随地访问数据的需求Grist同样适用于移动设备确保您可以随时更新和查看重要信息。安全性和权限控制提供了详细的权限设置选项可以针对不同用户或团队成员设定读写权限保护敏感数据的安全。。二、本次实践规划2.1 本地环境规划本次实践为个人测试环境操作系统版本为Ubuntu 22.04.1 LTS。hostname内网 IP地址操作系统版本Docker版本项目名称jeven192.168.3.251Ubuntu 22.04.1 LTS24.0.7Grist2.2 本次实践介绍1.本次实践部署环境为个人测试环境生产环境请谨慎2.在Docker环境下部署Grist关系型电子表格工具。三、本地环境检查3.1 检查Docker服务状态检查Docker服务是否正常运行确保Docker正常运行。rootjeven:~# systemctl status docker● docker.service - Docker Application Container Engine Loaded: loaded(/lib/systemd/system/docker.service;enabled;vendor preset: enabled)Active: active(running)since Wed2025-01-15 03:27:21 UTC;2days ago TriggeredBy: ● docker.socket Docs: https://docs.docker.com Main PID:251204(dockerd)Tasks:24Memory:1.9G CPU: 4min22.839s CGroup: /system.slice/docker.service3.2 检查Docker版本检查Docker版本rootjeven:~# docker -vDocker version24.0.7, build24.0.7-0ubuntu2~22.04.13.3 检查docker compose 版本检查Docker compose版本确保2.0以上版本。rootjeven:~# docker compose versionDocker Compose version v2.19.1四、下载Grist镜像执行以下命令拉取以下Grist镜像。rootjeven:~# docker pull registry.cn-hangzhou.aliyuncs.com/jeson/grist:latestlatest: Pulling from jeson/grist Digest: sha256:0c13e3604b3ae2bf658c6a63be26b20f0f1757f4b4e793d0f74641426367a5dd Status: Image is up todateforregistry.cn-hangzhou.aliyuncs.com/jeson/grist:latest registry.cn-hangzhou.aliyuncs.com/jeson/grist:latest五、部署Grist应用5.1 创建部署目录创建部署目录mkdir-p/data/gristcd/data/grist5.2 docker-cli部署可选如果不想使用docker compose方式部署可以使用docker-cli方式部署参考如下dockerrun-d\--restartalways\--namegrist\-p8484:8484\-v$(pwd):/persist\registry.cn-hangzhou.aliyuncs.com/jeson/grist:latest5.3 编辑部署文件本次实践使用docker compose方式部署在部署目录下创建docker-compose.yaml文件其中宿主机映射端口等可以自定义配置。vimdocker-compose.yamlversion:3.9services:grist:image:registry.cn-hangzhou.aliyuncs.com/jeson/grist:latestvolumes:-/data/grist/data:/persistports:-8484:8484container_name:gristrestart:always5.4 创建Grist容器执行以下命令创建Grist容器。rootjeven:/data/grist# docker compose up -d[]Running2/2 ✔ Network grist_default Created0.1s ✔ Container grist Started0.3s5.5 查看Grist容器状态检查Grist容器状态状态确保Grist容器正常启动。rootjeven:/data/grist# docker compose psNAME IMAGE COMMAND SERVICE CREATED STATUS PORTS grist registry.cn-hangzhou.aliyuncs.com/jeson/grist:latest./sandbox/docker_en…grist About a minute ago Up About a minute0.0.0.0:8484-8484/tcp, :::8484-8484/tcp5.6 检查Grist容器日志检查GristGrist容器日志确保Grist服务正常运行。dockercompose logs六、访问Grist服务6.1 访问Grist初始页访问地址http://IP地址:8484将IP替换为自己服务器IP地址。如果无法访问到以下页面则检查宿主机的防火墙是否关闭或者放行相关端口云服务器则还需要设置安全组规则。6.2 设置系统语言点击注册账号或登录选项时会自动注册账号和自动登录。在系统设置中设置系统语言为简体中文。其余配置及功能参考官网文档https://support.getgrist.com/self-managed/七、总结在本篇实战文章中我们详细介绍了如何利用Docker部署Grist关系型电子表格工具为用户搭建一个集直观易用性与强大数据库功能于一身的数据管理平台。通过Docker容器化技术不仅简化了Grist的安装和配置过程还确保了其可以在多种环境中轻松部署和运行极大地提高了灵活性和可移植性。借助Grist个人和团队能够以更加高效和结构化的方式组织、管理和分析数据无需具备专业的编程或数据库管理技能。