У меня есть программа, которую я хочу запускать по запросу, используя launchd
выполнив следующую команду:
/usr/local/bin/godoc -http=:6060
Эта программа запускает приложение HTTP, которое прослушивает указанный порт 6060.
В моем списке недвижимости есть
<key>Sockets</key>
<dict>
<key>default</key>
<dict>
<key>SockNodeName</key>
<string>localhost</string>
<key>SockServiceName</key>
<integer>6060</integer>
<key>SockPassive</key>
<true/>
</dict>
</dict>
Однако, когда я запускаю демон, приложение выводит на stderr:
ListenAndServe :6060: listen tcp :6060: bind: address already in use
Насколько я понимаю, launchd
создает сокет и передает его приложению, но это приложение пытается снова создать сокет, поэтому не удается.
Какие параметры у меня есть, чтобы запустить это launchd
по запросу, по требованию?