You've already forked Traefik-Certificate-Dumper
							
							
		
			
				
	
	
		
			84 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			84 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
| #!/usr/bin/sh
 | |
| 
 | |
| ### BEGIN INIT INFO
 | |
| # Provides:          traefik-certs-dumper
 | |
| # Required-Start:    $local_fs $network $remote_fs
 | |
| # Required-Stop:     $local_fs $network $remote_fs
 | |
| # Default-Start:     2 3 4 5
 | |
| # Default-Stop:      0 1 6
 | |
| # Short-Description: Dump Let's Encrypt certificates from Traefik.
 | |
| # Description:       The traefik-certs-dumper is a tool for extracting and
 | |
| #                    managing SSL/TLS certificates from Traefik, a reverse
 | |
| #                    proxy and load balancer. It simplifies the backup and
 | |
| #                    transfer of certificates, making it useful for developers
 | |
| #                    and system administrators focused on application security.
 | |
| ### END INIT INFO
 | |
| 
 | |
| NAME='traefik-certs-dumper'
 | |
| DESC='Traefik Certificates Dumper'
 | |
| USER='traefik'
 | |
| GROUP='traefik'
 | |
| PIDFOLDER="/run/traefik"
 | |
| PIDFILE="${PIDFOLDER}/traefik-certs-dumper.pid"
 | |
| DAEMON='/usr/sbin/traefik-certs-dumper'
 | |
| DAEMON_DESTINATION='/var/lib/traefik/acme-repository'
 | |
| DAEMON_OPTS="file --source '/var/lib/traefik/acme.json' --version 'v3' --crt-name 'root' --dest ${DAEMON_DESTINATION} --domain-subdir --key-name 'root' --post-hook '/etc/traefik/acme-hook' --watch"
 | |
| 
 | |
| set -e
 | |
| 
 | |
| . '/lib/lsb/init-functions'
 | |
| 
 | |
| [ -x "${DAEMON}" ]
 | |
| 
 | |
| case "${1}" in
 | |
|   start)
 | |
|     /usr/bin/install --directory --group="${GROUP}" ---mode='0755' --owner="${USER}" "${PIDFOLDER}"
 | |
|     log_daemon_msg "Starting ${DESC}" "${NAME}"
 | |
|     if /usr/sbin/start-stop-daemon --quiet \
 | |
|                                    --start \
 | |
|                                    --oknodo \
 | |
|                                    --make-pidfile \
 | |
|                                    --pidfile "${PIDFILE}" \
 | |
|                                    --user "${USER}" \
 | |
|                                    --group "${GROUP}" \
 | |
|                                    --exec "${DAEMON}" -- "${DAEMON_OPTS}"; then
 | |
|       log_end_msg 0
 | |
|     else
 | |
|       log_end_msg 1
 | |
|       /usr/bin/test -f "${PIDFILE}" && \
 | |
|         /usr/bin/rm --force "${PIDFILE}"
 | |
|     fi
 | |
|   ;;
 | |
|   stop)
 | |
|     log_daemon_msg "Stopping ${DESC}" "${NAME}"
 | |
|     if /usr/sbin/start-stop-daemon --quiet \
 | |
|                                    --stop \
 | |
|                                    --oknodo \
 | |
|                                    --retry 30 \
 | |
|                                    --remove-pidfile \
 | |
|                                    --pidfile "${PIDFILE}" \
 | |
|                                    --user "${USER}" \
 | |
|                                    --group "${GROUP}" \
 | |
|                                    --exec "${DAEMON}"; then
 | |
|       /usr/bin/test -f "${PIDFILE}" && \
 | |
|         /usr/bin/rm --force "${PIDFILE}"
 | |
|       log_end_msg 0
 | |
|     else
 | |
|       log_end_msg 1
 | |
|     fi
 | |
|   ;;
 | |
|   restart)
 | |
|     "${0}" stop
 | |
|     "${0}" start
 | |
|   ;;
 | |
|   status)
 | |
|     status_of_proc -p "${PIDFILE}" "${DAEMON}" "${NAME}" && \
 | |
|       exit 0 || \
 | |
|       exit "${?}"
 | |
|   ;;
 | |
|   *)
 | |
|     echo "Usage: /etc/init.d/${NAME} {start|stop|restart|status}" >&2
 | |
|     exit 1
 | |
|   ;;
 | |
| esac
 |