toto是什么?
一个简单的blog系统,地址在https://github.com/cloudhead/toto,就是《绿野仙踪》的多萝茜的小狗的名字,以前有人介绍过,在http://www.cnblogs.com/yuanpingi/archive/2011/07/14/toto-tutorial.html。
为什么选toto?
因为搜狐的宣传里说能用git,而toto正是用git管理文章的。
流程大概是这样:
在http://cloudscape.sohu.com/的控制台界面https://console.cloudscape.sohu.com/里创建app,选择ruby类型,
创建成功,得到appid、app的网址和git地址。
开始搞代码
mkdir blog
cd blog
bundle init
修改Gemfile,从taobao的镜像安装toto。
source "http://ruby.taobao.org/"
gem "toto"
gem "unicorn"
把依赖库都装好
bundle install --path vendor/bundle --binstubs
安装toto依赖的dorothy
git clone git://github.com/cloudhead/dorothy.git app
写启动脚本start.sh
#!/bin/bash
cd /opt/src/weblog && /opt/apps/ruby/bin/ruby ../bin/unicorn
给启动脚本加上可执行权限
chmod +x start.sh
写配置文件app.yaml,738848394是创建app时获得的appid,/opt/src/start.sh是程序上传云景平台后启动脚本的位置。
appid: 738848394
start: /opt/src/start.sh
创建一个帖子,其实就是放一个纯文本文件在app/articles下,比如app/articles/yet-another-blog-post.txt:
title: Yet another blog from Cloudscape
author: Anonymous blogger
date: 2014/06/01
This is a post.
尝试访问创建程序时得到的git地址,发现没法访问,一查文档发现“目前云景平台暂未开放此功能。”,toto的精华被废了
,只好先用web界面手工上传程序包。
打包
zip -r /tmp/app.zip .
在浏览器里的控制台上传app.zip,然后程序就自动跑起来了。
访问http://simpleblog.sohuapps.com/能看到结果:
总结
ruby程序能跑起来是正常的,没想到bundle的库也能用,运气挺好,估计是我开发用的linux桌面和云景平台的服务器版本差别不大吧,如果在windows下开发,很难想象bundle装的gem包里的dll能在云景平台上跑起来。
git现在不能用是挺糟糕的,不过既然说了支持,那大概也不会要等太久吧,到时候就能直接用git发帖了。
我用的是最小类型的实例,每小时4分钱,合计每天1块钱,注册时候就有100块资源费,通过实名认证再送100块,可以跑这个blog六七个月了。先跑着看看吧,如果没问题的话,就可以把大点的程序搬上去试试了。
程序放在资源里了,http://download.csdn.net/detail/nowheremonkey/7499125。