休假在家,时间比较充裕了。除了没日没夜地打一打哈利波特之外,还是干点事儿好了……
国内一直因为众所周知的缘故不能使用Firebase的服务,导致我手游半成品也一直没有什么心思继续完善。而切换到Playfab又有其他问题(比如没办法很好地实现玩家交易板功能),索性自己捣鼓用Parse手撸服务器好了……

环境需求

安装Parse需要有Node、MongoDB,虽然这俩我都已经有了,但各种版本号、用途不一的问题,让我觉得似乎直接拿来调戏Parse不是个明智之举……所以打算搞个Docker,在Docker里装Parse。反正现在Windows可以装Sub-Linux了,无缝衔接应该会很方便。

安装Docker

安装WSL2

因为这台电脑是年初才配的,装的Windows也够新,所以安装子Linux系统还是很方便的。只需要用管理员模式打开控制台,运行:wsl --install就可以了。默认会安装Ubuntu,不过反正我也挺喜欢Ubuntu的,就不改了。

下载好所需资源之后会提示你在重启WIndows之前不会有任何更改生效。重启之后Ubuntu便会自己蹦出来安装。

装好之后你需要给Ubuntu创建一个初始用户,输入用户名和密码即可。最后再运行一次sudo apt update && sudo apt upgrade就算是搞定了——可以直接在Windows里打开Terminal,在下三角里选择Ubuntu运行想在Linux下运行的命令(不过暂时用不到了)。

安装Docker

在装好WSL(目前默认版本号是2,所以是WSL2),就应该装Docker了。

嘛……实际上这也不是这篇文章的重点,装Docker感觉和装其他软件没啥区别。只要去Docker for Windows的下载页面下载下来安装即可……安装之前会有个小勾勾选上了WSL2,确保它是勾着的就好。

安装完成之后会需要登出/重新登入一次Windows,做好准备【。

安装Parse

安装MongoDB

Parse支持NoSQL,也支持Relational Database(默认是MongoDB和Postgres)。但既然都用了这么方便的后端了,谁还用关系数据库啊!果断选择MongoDB。

在Docker上安装MongoDB也很方便,只要Docker for Windows是开着的,你就可以打开任何终端运行Docker的命令——我用的是Windows Terminal。

docker run --name rin-fishing-db -v /data/rin-fishing-mongo:/data -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admin -p 27017:27017 -d mongo

输入以上命令,就会在Docker里新建一个叫rin-fishing-db的Container。名字随意,自己明白意思就行。这里用户名密码我都设置成admin了,反正本地开发,方便……

顺带一提,数据储存位置在\\wsl$\docker-desktop-data\version-pack-data\community\docker\volumes\

安装Parse

安装好MongoDB,就可以装Parse本体了。运行:

docker run --name rin-fishing-server -e PARSE_SERVER_APPLICATION_ID=rin-fishing -e PARSE_SERVER_MASTER_KEY=MASTER_KEY -e PARSE_SERVER_DATABASE_URI=mongodb://admin:admin@mongo/parse_server?authSource=admin --link rin-fishing-db:mongo -p 13579:1337 -d parseplatform/parse-server

相同地,设置的名字随意。Application ID和Master Key在开发环境也可以随意,产品上线的话就请自己掂量掂量了【。

这里还有个坑,就是设置端口的时候,因为我的1337端口被占用了,就用了13579。一开始我用的是-p 13579:13579也就是外部访问和内部都是13579,结果访问不到……所以如果各位要修改端口号,也请务必保留内部端口为1337不变。

Parse Dashboard

装完Parse,我们还可以装一个网页版的控制台:

docker run --name rin-fishing-dashboard -e PARSE_DASHBOARD_APP_ID=rin-fishing -e PARSE_DASHBOARD_MASTER_KEY=MASTER_KEY -e PARSE_DASHBOARD_USER_ID=wiseclock -e PARSE_DASHBOARD_USER_PASSWORD=123456 -e PARSE_DASHBOARD_ALLOW_INSECURE_HTTP=true -e PARSE_DASHBOARD_SERVER_URL=http://localhost:13579/parse -p 4040:4040 -d parseplatform/parse-dashboard

其中PARSE_DASHBOARD_USER_IDPARSE_DASHBOARD_USER_PASSWORD是你登入这个网页控制台的用户名和密码,请牢记。相同地,如果要修改访问端口,只需要修改-p 4040:4040的前半部分。

安装完成

装完后,Docker里就会出现三个Container了。只要Docker程序运行,这三个Container也就会持续工作。

Docker

打开http://localhost:4040/并登入,也可以看到Parse Dashboard的操作界面——大功告成!

Parse Dashboard