Writting a service start-stop script is not something one does regularly. Thougt to download a working script for personal benefit.

#!/bin/sh

. /etc/rc.subr

name="consul"
rcvar="${name}_enable"

pidfile="/home/app/consul.d/${name}.pid"
app_user="app"
app_group="app"
app_command="/home/app/bin/consul"
app_command_args="agent -config-dir /home/app/consul.d/server"
command="/usr/sbin/daemon"
command_args="-P /home/app/consul.d/daemon.pid -u ${app_user} -o /home/app/consul.d/logs.txt ${app_command} ${app_command_args}"

stop_cmd="kill -s INT $(cat $pidfile)"

load_rc_config $name
run_rc_command "$1"

References