1

我的食谱中有以下代码:

service "myapp" do
  supports :restart => true, :start => true, :stop => true
  action :nothing
end 

bash "install myapp" do
    cwd "/var/lib/myapp"
    code <<-EOH
    npm install myapp
    EOH
    timeout 86400
    notifies :start, "service[myapp]"
end

厨师食谱运行正常,我可以在控制台中看到以下输出:

212.71.1.1   * service[myapp] action start←[0m

但是,该服务并没有真正启动。如果我手动登录并运行“service myapp start”,它就可以正常工作了。

我尝试运行 knife bootstrap 命令,-VV但控制台上没有提供更多信息

4

1 回答 1

1

您已经定义了服务的功能,但没有定义您想要的操作。

service "example_service" do
  supports :status => true, :restart => true, :reload => true
  action [ :enable, :start ]
end

记录在这里

更新

为什么不使用npm食谱?如果它像宣传的那样工作,你的配方看起来更像是一个普通的包安装和服务声明:

npm_package "myapp" do
  version "1.2.3"
  path "/var/lib/myapp"
  action :install
end 

service "myapp" do
  supports :status => true, :restart => true, :reload => true
  action [ :enable, :start ]
end
于 2013-08-19T22:17:19.493 回答