我有一个服务(小型HTTP服务,在0.0.0.0:8080监听)写在Python启动系统启动。 问题是,有时在服务器启动的时候,即使IPv4还没有被内核初始化(?),启动也会很快。 Serivce发生错误(来自/ var / log / upstart):
socket.gaierror:[Errno -9]不支持主机名的地址族
手动启动后,启动正常。 在启动前添加“睡眠30”也有帮助。 但我想知道是否有一个更好,更干净的方式来指定在新贵的configuration,这个服务需要工作ipv4。 它不需要完整的“路由”或默认网关,甚至不需要configuration环回。 它所需要的只是能够绑定到“任何”(0.0.0.0)IPv4地址。
您可以将您的作业configuration为在start on (started networking)事件触发时启动。
开始此事件由Upstart在工作正在运行时发出。 请注意,作业不必具有关联的程序或脚本,因此“运行”不一定意味着任何其他进程正在执行。