#!/bin/sh # PROVIDE: traefik # REQUIRE: LOGIN # KEYWORD: shutdown # # Add the following lines to /etc/rc.conf.local or /etc/rc.conf # to enable this service: # # traefik_enable (bool): Set to NO by default. # Set it to YES to enable traefik. # traefik_user (user): Set user to run traefik. # Default is "traefik". # traefik_group (group): Set group to run traefik. # Default is "traefik". # traefik_conf (path): Path to traefik configuration file. # Default is %%PREFIX%%/etc/traefik.toml # traefik_env (vars): Set environment variables used with traefik # Default is "". # These are necessary for ACME (Let's Encrypt) # configuration, see # https://docs.traefik.io/configuration/acme/ . /etc/rc.subr name=traefik rcvar=traefik_enable load_rc_config $name : ${traefik_enable:="NO"} : ${traefik_user:="traefik"} : ${traefik_group:="traefik"} : ${traefik_conf:="%%PREFIX%%/etc/traefik.toml"} : ${traefik_env:=""} pidfile=/var/run/traefik.pid procname="%%PREFIX%%/bin/traefik" command="/usr/sbin/daemon" command_args="-f -p ${pidfile} /usr/bin/env ${traefik_env} ${procname} --configfile=${traefik_conf} ${traefik_args}" start_precmd=traefik_startprecmd traefik_startprecmd() { if [ ! -e ${pidfile} ]; then install -o ${traefik_user} -g ${traefik_group} /dev/null ${pidfile}; fi } run_rc_command "$1"