网管小贾 / sysadm.cc
公司小Z过年回来就变得有点魔怔,工作积极性不高,天天话里话外总是唠叨着要辞职回老家种地!
老板让我去劝劝他,强调务必对齐颗粒度,说劝好了给我记上一功。
我也不知道之前的那些功啥时候能变现,不过正好这一天我倒出点空,就向小Z打听打听他的近况。
小Z这小伙儿呢平时在公司也就打打杂,没啥正经活干,一天天地就看个手机,虽然每月拿着三千二百五的高薪,但是工作不算累。
年前有段时间我就发现他经常刷一些农村题材的视频,像什么在农村买个房子,完了自己开垦荒地种个瓜果梨桃啥的,要不就是养鸡养鸭养鳄鱼。
我问他好看不,平时爱答不理的他一听倒来了劲头,乐此不疲地向我介绍农村生活的各种美好。
一时间这小子滔滔不绝、口若悬河,把那未来的美景给我画得那么宏伟壮阔,比那老板画的饼都香上两个级别。
说实话,我也觉得挺好看,便饶有兴趣地听了那么一会儿,最后好不容易轮到我接茬了。
我就说,城市里太危险,你应该回到农村去,你看你志向也挺远大的,可是看似美好的东西,它是要付出辛勤的劳动和汗水才能获得的啊,你吃得了那苦吗?
结果这小Z小脸一扬,带着不屑指天发誓定要试试,不试试咋知道自己合不合适当农场主呢!
你以为你是大衣哥啊,一出门,什么小鸡小鸭小鹅、小猪小牛小羊都围拢过来,你是高高在上的森林之王啊!
行,农场主是吧?
正好,我给你看样东西,我就问你,你懂现代化农场理论吗,你会用电脑系统管理农场吗?
小Z就反问道,就两亩薄田还整啥现代化农场,偷菜我倒是玩过。
不管怎么地吧,先来看看这个!
我打开电脑,给他看了 FarmOS
,一款可以让你体验农场主的系统。
FarmOS
可能有很多人没听说过,它的确是一款挺有意思的 Web
应用,它可以帮助人们方便农业管理、规划与记录应用。
注意,它可不是游戏哦!
FarmOS
构建在 Drupal
的基础之上,虽然我也没怎么用过 Drupal
,但你可以简单地理解为像 Wordpress
差不多的同样基于 PHP
的内容管理系统,因此我们也就很容易理解 FarmOS
是专门提供农场管理功能的这么一个系统了。
它由生活在社区中的一些农户、开发人员、研究人员以及相关组织共同开发出来的,目的是更好地为人们提供一个用于农业数据收集和管理的标准平台。
这个 FarmOS
到底里面都有点啥呢?
我也是初次了解,因此我先替小伙伴们蹚了蹚水,试了试深浅。
本文非常适合第一次接触 FarmOS
的小伙伴,感兴趣的话请接着往下看哈!
在初步了解 FarmOS
之前自然是想办法安装一个看看。
不过这玩意好像不太好装,并且限制较多,还好在自己的主机上也可以部署,这就给了我们一个初步体验的机会。
好,先来看看安装配置要求吧。
- 要有
Web
服务,比如Nginx
之类 - 要有数据库,
PostgreSQL
或MySQL
或SQLite
PHP
>=8.2
MySQL
>=5.7
官网上要求挺多,而且 PHP
中还要一些特殊扩展,比如 xmlrpc
等,不太好搞。
一开始我在 Windows
下折腾了老半天,不得要领。
好不容易快看到希望,就差最后一哆嗦了,可惜哆嗦完了,然后就没有然后了。
尝试过了各种安装方式的失败(包括发行版安装和 Composer
安装),最后决定还是拿最简单,但又不那么简单的 Docker
方式来安装!
Docker
环境要事先部署,比较考验耐心,如果你已经有了 Docker
,那么直接上手就方便多了。
使用 Docker
安装,按如下命令行执行,其中 3.x.y
是指版本号,比如 3.1.1
。
docker pull farmos/farmos:3.x.y
或者干脆不带版本号安装也是可以的。
docker pull farmos/farmos
不过官方并不建议使用这种默认最新版 Lastest
的方式来安装,究其原因是因为后续更新可能需要我们自己手动操作,难免会带来一些麻烦。
数十秒安装完成,接下来就可以运行 FarmOS
了。
docker run --rm -p 80:80 -v "${PWD}/sites:/opt/drupal/web/sites" farmos/farmos:3.x.y
如果系统提示端口冲突,那么可以这样改一个新端口(比如 8088
),注意前面那个才是外部端口。
docker run --rm -p 8088:80 -v "${PWD}/sites:/opt/drupal/web/sites" farmos/farmos:3.x.y
好了,打开浏览器,输入服务器的链接地址访问吧!
http://x.x.x.x/
或者你改过端口了。
http://x.x.x.x:8088/
这样就可以打开初始化安装向导程序界面了。
不过话说挺奇怪的,为啥我这儿直接跳过了 选择语言
和 确认配置
两个步骤呢(不知道是不是 BUG
)?
直接来到了第三个步骤,设定数据库。
在 Docker
安装方式下,这里的数据库服务必定是在外部的(相对 Docker
容器),我们可以点击那个高级选项 Advanced options
。
在这里可以指定数据库服务器的域名或 IP
地址,以及访问端口、数据表前缀等信息。
数据库设置没问题的话,接下来它就开始安装导入数据了。
数秒后我们来到了站点配置界面。
在这里我们可以给我们即将诞生的可爱农场起个萌萌哒的名字,然后再填写一些诸如邮箱、管理员等信息。
最后,安装你想要的一些模块。
我也是刚开始接触这玩意,不知道选择啥,就保持默认吧。
这个安装需要花点时间,不过也不算太慢,之后所有安装就可以全部搞定了。
点击 existing site
或是重新打开站点,我们的农场网站就可以开始使用了。
美中不足的是,由于地图需要用到 GPS
,而这个东东它是在墙外边的,因此一片空白没办法正常显示。
地图由 OpenStreetMap
提供服务,正常情况下它应该是这个样子的。
官网其实是有说明的,包括关于 FarmOS
域名注册,以及如何生成 Google API
密钥等。
因为地图是比较敏感的信息,因此也不太方便在这里展示了,有能力的小伙伴们请自行研究吧。
当然了,我在这儿留个链接,注意这是 v1
版本的,仅供参考。
https://v1.farmos.org/hosting/apikeys/
好了,接下来我们就可以用 FarmOS
来管理我们的农场了。
比如添加一些资产,有牲畜、设备、土地、农作物、房子、水源等等。
然后再增加一些人员,比如工人和管理员。
还有一些其他具体的内容我也没详细操作过,小伙伴们可以自行体验哈!
如果大家没能成功安装也别着急,可以通过官方提供的演示页面来体验。
在演示界面下倒是可以看到地图的样貌。
https://farmos-demo.rootedsolutions.io/demo/3.x
话说经过我这么一介绍,没想到小Z两眼放光,把这小子给深深吸引住了。
他问我,这玩意怎么都是英文的?
我告诉他,Drupal
是支持中文语言的,只是 FarmOS
本身支不支持中文就不太清楚了,我还没来得及查资料。
小Z点了点头,说自己好歹是过了四级的人,虽然大部分都还给了老师,但是个把单词还是能靠翻译软件搞定的。
只是……
小Z看了看我,居然想拉我一起搞农场!
我心想,你小子也就是说说而已吧,回家种地维持个温饱,恐怕时间一长就厌倦了,还得出来打工,年轻人不知深浅啊!
我合上电脑摆了摆手,朝着老板办公室走去,边走边说老板那还欠我两顿盒饭呢,我暂时没有挪窝的打算哈。
看我没有合作的意思,小Z低头叹了口气,然后拨通了老家的电话。
“喂!大伯父,过年时商量的让我接手西山上那2000亩地,我考虑过了,就这几天回来!”
我不由自主地暂停了脚步,此时也不知道我该和他再谈谈呢,还是去找老板汇报……
将技术融入生活,打造有趣之故事
网管小贾 / sysadm.cc