让 Consul 在 macOS 启动时自动启动

Have Consul auto-start on launch with macOS

我刚刚开始研究使用 Consul 并正在关注 consul-devops-handbook. It had some details on auto-starting Consul,但这仅适用于 Ubuntu。

是否有人有针对 macOS 实现此目的的指南?

对于 macOS,我想它可能与将它添加到 LaunchDaemon 有关?

可以通过在 /Library/LaunchDaemons/ 中添加一个 .plist 文件来实现:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
        <dict>
                <key>Label</key>
                <string>consul</string>
                <key>ProgramArguments</key>
                <array>
                        <string>/usr/local/bin/consul</string>
                        <string>agent</string>
                        <string>-config-dir</string>
                        <string>/etc/consul.d/client</string>
                </array>
                <key>RunAtLoad</key><true/>
                <key>KeepAlive</key><true/>

                <key>StandardOutPath</key>
                <string>/var/log/consul.log</string>
                <key>StandardErrorPath</key>
                <string>/var/log/consul_err.log</string>

        </dict>
</plist>