在 LeanCloud 上托管 Clojure web 应用

在 LeanCloud 上托管 Clojure web 应用

江宏江宏
之前我写了一篇「在 LeanEngine 上使用 Clojure」,其实是用 ClojureScript 在 LeanCloud 云引擎的 Node 环境部署 Clojure 程序,可能有点欺骗大家的感情。不过现在云引擎已经支持 JVM 版的 Clojure 了。

部署一个最简单的 Clojure web 应用只需要简单的几步:

  • LeanCloud 上创建一个应用,并设置好对应的二级域名。
  • 安装 Clojure 的构建工具 Leiningen,和 LeanEngine 命令行工具
  • 用 Leiningen 创建一个最小的 web 应用:
    lein new compojure my-webapp
    cd my-webapp
    
  • 然后把当前项目和你刚才创建的 LeanCloud 应用关联起来:
    lean checkout
    
  • 最后就可以把这个应用部署到云引擎上了。首先要生成一个 war 文件:
    lein ring uberwar
    
    虽然我们是部署 war 文件,但是当前的 lean 命令行工具还是要求项目根目录有一个 pom.xml 才能识别出这是一个 JVM 的项目(在未来的版本里我们会把这个要求去掉),所以还需要生成这个文件:
    lein pom
    

    然后部署

    lean deploy --war
    

部署完成后,用浏览器访问你在第一步配置好的二级域名应该就能看到「Hello World!」了。你可以以这个最小项目为基础,实现想要的功能。

Caveats:

  • lein 和 lean 这两个命令行工具很容易混淆,要注意区分。
  • 由于 JVM 对内存需求比较高,建议使用 1G 内存的云引擎实例。
文章被以下专栏收录
4 条评论
推荐阅读