caddy/dist/init/mac-launchd/README.md

1.4 KiB

launchd service for macOS

This is a working sample file for a launchd service on Mac, which should be placed here:

/Library/LaunchDaemons/com.caddyserver.web.plist

To create the proper directories as used in the example file:

sudo mkdir -p /etc/caddy /etc/ssl/caddy /var/log/caddy /usr/local/bin /var/tmp /srv/www/localhost
sudo touch /etc/caddy/Caddyfile
sudo chown root:wheel /usr/local/bin/caddy /Library/LaunchDaemons/
sudo chown _www:_www /etc/caddy /etc/ssl/caddy /var/log/caddy
sudo chmod 0750 /etc/ssl/caddy

Create a simple web page and Caddyfile

sudo bash -c 'echo "Hello, World!" > /srv/www/localhost/index.html'
sudo bash -c 'echo "http://localhost {
    root /srv/www/localhost
}" >> /etc/caddy/Caddyfile'

Start and Stop the Caddy launchd service using the following commands:

launchctl load /Library/LaunchDaemons/com.caddyserver.web.plist
launchctl unload /Library/LaunchDaemons/com.caddyserver.web.plist

To start on every boot use the -w flag (to write):

launchctl load -w /Library/LaunchDaemons/com.caddyserver.web.plist

To start the service now:

launchctl start -w /Library/LaunchDaemons/com.caddyserver.web.plist

More information can be found in this blogpost: Running Caddy as a service on macOS X server