本文是应网友
lee yong
和
shijie880500
的要求折腾的;
什么是 APITable ?
APITable
是
vika
维格表的社区版,是一个面向
API
且易于使用的可视化数据库,适合所有人,使其成为
Airtable
的最佳开源替代品。最重要的是,
APITable
拥有更酷的
UI
和更多的功能,可以将您的工作和生活优化到一个神奇的水平。
按官方的说法,
APITable
目前正在
积极开发中
,并将在
2023
年
2
月下旬公布第一份发行版本。
前言
一开始老苏是打算安装多容器版本的,但在运行中发现老苏的小机器根本抗不住,大约有
12
个容器,启动过程中服务器
CPU
、内存都在满负荷运作,很容易失联、重启,所以日志中会看到超时、失败等,总之没成功。老苏也会把折腾过程写出来,放在文末供参考,但这不是本文的重点
官方发布了一个
All In One
的版本,里面包含了所需要的
mysql/redis/minio/rabbitmq
,安装过程、使用中也比较耗资源,但是比多容器的要好得多。这是给大家体验的,不要用在生产环境
We also provide an all-in-one image based on pm2 for demo or testing
purpose (not recommended for enterprise or production usage)
安装
在群晖上以 Docker 方式安装。
在注册表中搜索
apitable
,选择第一个
apitable/all-in-one
,版本选择
v0.18.0-alpha_888
目前在测试阶段,更新非常频繁,一天都能出几个版本,老苏周三下午安装还是
887
,晚上就出了
888
,本文发布时,已经是
902
了
卷
在
docker
文件夹中,创建一个新文件夹
vika
,并在其中建一个子文件夹
data
文件夹装载路径说明
docker/vika/data
/apitable
存放数据库等
端口
本地端口不冲突就行,不确定的话可以用命令查一下
# 查看端口占用netstat-tunlp|grep 端口号
本地端口容器端口
7088
80
默认对外暴露了一堆端口,其中
3306
:是MySQL
服务;5672
:是RabbitMQ
服务;6379
:是Redis
服务;9000
:是MinIO
服务;80
:是Nginx
服务;
如果你不打算从外部直接访问这些服务的话,只要保留
80
就可以了
命令行安装
如果你熟悉命令行,可能用
docker cli
更快捷
# 新建文件夹 vika 和 子目录mkdir-p /volume2/docker/vika/data
# 进入 vika 目录cd /volume2/docker/vika
# 运行容器docker run -d\--restart unless-stopped \--name apitable \-p7088:80 \-v$(pwd)/data:/apitable \
apitable/all-in-one:v0.18.0-alpha_888
也可以用
docker-compose
安装,将下面的内容保存为
docker-compose.yml
文件
version:'3'services:cherry:image: apitable/all-in-one:v0.18.0-alpha_888
container_name: apitable
restart: unless-stopped
ports:- 7088:80volumes:- ./data:/apitable
然后执行下面的命令
# 新建文件夹 vika 和 子目录mkdir-p /volume2/docker/vika/data
# 进入 vika 目录cd /volume2/docker/vika
# 将 docker-compose.yml 放入当前目录# 一键启动docker-compose up -d
内存占用还是比较高的
运行
在浏览器中输入
http://群晖IP:7088
就能看到主界面
根据机器的性能不同,您可能需要等待几分钟才能启动所有服务,老苏差不多等了有
5
分钟
缺省用户名为
[email protected]
,密码为
Apitable2022
接下来创建空间,创建表单
不能自动识别系统语言版本,需要自己设置,在左下角找到
My Settings
在
Preferences
-->
Language
中选择
简体中文
界面会自动刷新,刷新之后就是中文了
随便点了点,总能看到这样的页面,毕竟还是阿尔法版
功能大家慢慢摸索吧,老苏没找到中文的使用手册,也许再等等就有了
多容器折腾记录
升级 docker-compose
因为是多容器,所以全程使用命令行安装,但是在安装前,需要确认下你群晖上
docker-compose
的版本
# 检测 docker 版本docker-v# 检测 docker-compose 版本docker-compose-v
docker-compose
如果低于
1.29.0
,启动后日志中会出现
depends_on condition "service_completed_successfully" is invalid.
错误
Creating network "vika_apitable" with driver "bridge"
Traceback (most recent call last):
File "docker-compose", line 3, in <module>
File "compose/cli/main.py", line 80, in main
File "compose/cli/main.py", line 192, in perform_command
File "compose/metrics/decorator.py", line 18, in wrapper
File "compose/cli/main.py", line 1165, in up
File "compose/cli/main.py", line 1161, in up
File "compose/project.py", line 702, in up
File "compose/parallel.py", line 99, in parallel_execute
File "compose/parallel.py", line 48, in parallel_execute_watch
File "compose/parallel.py", line 173, in parallel_execute_iter
File "compose/parallel.py", line 222, in feed_queue
File "compose/project.py", line 694, in get_deps
File "compose/service.py", line 761, in get_dependency_configs
ValueError: depends_on condition "service_completed_successfully" is invalid.
[31897] Failed to execute script docker-compose
原因很简单,
service_completed_successfully
是
docker-compose
在
1.29.0
之后才引入的,显然老苏的
DSM6
上不行,要继续只能想办法对
docker-compose
升级,但群晖的官方套件找不到可升级的版本
下面的操作是不是有风险老苏并不太清楚,但是建议你在升级前先备份
/var/packages/Docker/target/usr/bin/docker-compose
,不管放到哪里,给自己一个后悔的机会总是没错的
# 老苏给随便丢到了 vika 目录
cp /var/packages/Docker/target/usr/bin/docker-compose /volume2/docker/vika
然后老苏尝试着用下面的命令对
docker-compose
升级
可以升级到最新的
v2.16.0
版,但下面的命令只升级到了
v2.7.0
# 独立下载和安装 Composecurl-sSL https://github.com/docker/compose/releases/download/v2.7.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
# 下不动价加个代理curl-sSL https://ghproxy.com/github.com/docker/compose/releases/download/v2.7.0/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
安装之后,再次检查
docker-compose
版本
开始安装
官方提供了所需要的文件,只需按部就班就可以了
# 新建文件夹 vika 和 子目录mkdir-p /volume2/docker/vika/.data/{minio/{data,config},mysql,rabbitmq,redis}# 进入 vika 目录cd /volume2/docker/vika
# 下载安装文件包curl-sSL https://github.com/apitable/apitable.github.io/releases/latest/download/docker-compose.tar.gz -o docker-compose.tar.gz
# 下不动就加个代理试试curl-sSL https://ghproxy.com/github.com/apitable/apitable.github.io/releases/latest/download/docker-compose.tar.gz -o docker-compose.tar.gz
# 解压缩tar-xvzf docker-compose.tar.gz
现在的目录结构
修改
.env
中的端口
为了方便修改先重命名为
txt
,改完后记得改回去
老苏改成下面的端口
NGINX_HTTP_PORT=7088
NGINX_HTTPS_PORT=7443
接下来就可以直接一键启动了,但是在你启动前建议三思而行,尤其是白裙,性能应该都比较一般
# 一键启动docker-compose up -d
第一次建议用
docker-compose up
启动,这样能看到详细的日志
CPU
就没低过
80%
基本上都是一直处于满负荷状态
有可能会遇到错误退出
更大的可能性就是直接失联,折腾了几天愣是连首页面都没跑出来
小结
这是老苏写文章专用的小机器,方便你对比一下
老苏觉得在群晖上用用
All In One
的版本就行了,多容器版本就算了吧,用三体的话说,就是不要安装、不要安装!
参考文档
apitable/apitable: 🚀🎉📚 APITable, an API-oriented low-code platform for building collaborative apps and better than all other Airtable open-source alternatives.
地址:https://github.com/apitable/apitable
APITable: vika.cn维格表社区版,地表至强的开源低代码、多维表格工具,Airtable的开源免费替代。
地址:https://gitee.com/apitable/APITable
APITable | Open source no-code database and Airtable alternative
地址:https://apitable.com/
feat: all-in-one Docker image - like Budibase · Issue #230 · apitable/apitable
地址:https://github.com/apitable/apitable/issues/230
群晖安装 Docker Compose
地址:https://www.zbaiquan.cn/archives/qun-hui-an-zhuang-dockercompose
版权归原作者 杨浦老苏 所有, 如有侵权,请联系我们删除。