linuxserver/docker-smokeping

[FEAT] Support https master-url

haught opened this issue · 1 comments

haught commented

Is this a new feature request?

  • I have searched the existing issues

Wanted change

add package perl-lwp-protocol-https to container image

Reason for change

Using a smokeping slave talking to a master via https fails:

WARNING Master said 501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
ERROR: we did not get config from the master. Maybe we are not configured as a slave for any of the targets on the master ?

Adding perl-lwp-protocol-https
apk add perl-lwp-protocol-https
and running as slave then works with --master-url=https://.....

Proposed code change

Add perl-lwp-protocol-https to packages installed in Dockerfiles. Ex:

RUN \
  echo "**** install packages ****" && \
  if [ -z ${SMOKEPING_VERSION+x} ]; then \
    SMOKEPING_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.17/main/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
    && awk '/^P:smokeping$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
  fi && \
  apk add --no-cache \
    apache2 \
    apache2-ctl \
    apache2-utils \
    apache-mod-fcgid \
    bc \
    bind-tools \
    font-noto-cjk \
    openssh-client \
    smokeping==${SMOKEPING_VERSION} \
    ssmtp \
    sudo \
    tcptraceroute \
    perl-lwp-protocol-https && \
  echo "**** give setuid access to traceroute & tcptraceroute ****" && \
  chmod a+s /usr/bin/traceroute && \
  chmod a+s /usr/bin/tcptraceroute && \
  echo "**** fix path to cropper.js ****" && \
  sed -i 's#src="/cropper/#/src="cropper/#' /etc/smokeping/basepage.html && \
  echo "**** remove default apache conf ****" && \
  rm -rf \
    /tmp/* \
    /etc/apache2/httpd.conf

Thanks for opening your first issue here! Be sure to follow the relevant issue templates, or risk having this issue marked as invalid.