【问题标题】:Run yesod devel as a background process运行 yesod devel 作为后台进程
【发布时间】:2014-03-25 17:14:14
【问题描述】:

我已成功使用Nginx 在我自己的Ubuntu 服务器中部署Yesod 应用程序。我这样做的方式是,我只需运行 yesod develNginx 对正确的端口进行反向代理 --> localhost:3000

但是,有一个问题。如何将yesod devel 作为后台进程运行?

Deploying Your Yesod Webapp 中有一节讨论服务器进程。它说要创建一个 Upstart 配置文件并启动。创建 Upstart 配置文件后,我执行了命令sudo start yesodAppName

问题是我无法访问我的 Yesod 应用程序。可能有什么我不明白的地方。

【问题讨论】:

    标签: nginx yesod


    【解决方案1】:

    我已成功找到解决方案。

    Deploying Your Yesod Webapp 中的章节Server Process 描述了如何将 Yesod 应用程序作为服务器进程运行。它说要在 /etc/init/mySite 中创建以下 Upstart 配置文件

    description "My awesome Yesod application"
    start on runlevel [2345];
    stop on runlevel [!2345];
    respawn
    chdir /home/michael/sites/mysite
    exec /home/michael/sites/mysite/dist/build/mysite/mysite
    

    问题是最后一行不完整。 Yesod 让您可以在开发、测试、登台或生产模式下运行您的 web 应用程序。因此,需要在exec 命令中指定。

    这是一个例子:

    exec /home/michael/sites/mysite/dist/build/mysite/mysite Development
    

    exec /home/michael/sites/mysite/dist/build/mysite/mysite MODE
    

    其中 MODE = 开发、测试、登台或生产。

    【讨论】:

    • 您甚至可以使用环境变量覆盖默认参数,例如“exec PORT=8080 APPROOT=myapp.example.com /home/michael/sites/mysite/dist/build/mysite/mysite MODE”
    猜你喜欢
    • 1970-01-01
    • 2020-07-08
    • 1970-01-01
    • 1970-01-01
    • 2019-09-11
    • 1970-01-01
    • 2012-12-11
    • 1970-01-01
    • 2017-04-14
    相关资源
    最近更新 更多