linuxserver/docker-smokeping

RRDs::info /data/foo.rrd: ERROR: '/data/foo.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.

kaihendry opened this issue · 9 comments

Expected Behavior

Smoke ping charts up on https://smokeping.dabase.com/

Current Behavior

Software error on https://smokeping.dabase.com/

Environment

OS: Raspbian
CPU architecture: arm32 Linux rasping 5.10.17-v7+ #1403 SMP Mon Feb 22 11:29:51 GMT 2021 armv7l GNU/Linux
How docker service was installed: via distribution

pi@rasping:~ $ docker info
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  app: Docker App (Docker Inc., v0.9.1-beta3)
  buildx: Build with BuildKit (Docker Inc., v0.5.1-docker)

Server:
 Containers: 1
  Running: 1
  Paused: 0
  Stopped: 0
 Images: 4
 Server Version: 20.10.5
 Storage Driver: overlay2
  Backing Filesystem: extfs
  Supports d_type: true
  Native Overlay Diff: true
 Logging Driver: json-file
 Cgroup Driver: cgroupfs
 Cgroup Version: 1
 Plugins:
  Volume: local
  Network: bridge host ipvlan macvlan null overlay
  Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
 Swarm: inactive
 Runtimes: io.containerd.runc.v2 io.containerd.runtime.v1.linux runc
 Default Runtime: runc
 Init Binary: docker-init
 containerd version: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
 runc version: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
 init version: de40ad0
 Security Options:
  seccomp
   Profile: default
 Kernel Version: 5.10.17-v7+
 Operating System: Raspbian GNU/Linux 10 (buster)
 OSType: linux
 Architecture: armv7l
 CPUs: 4
 Total Memory: 924.2MiB
 Name: rasping
 ID: TCIV:KHD3:LOPZ:2MNI:UNI4:WWZR:RYBV:3HBQ:SKBH:CUQV:WHGD:FHU2
 Docker Root Dir: /var/lib/docker
 Debug Mode: false
 Registry: https://index.docker.io/v1/
 Labels:
 Experimental: false
 Insecure Registries:
  127.0.0.0/8
 Live Restore Enabled: false

Command used to create docker container (run/create/compose/screenshot)

pi@rasping:~/smokeping $ cat docker-compose.yml
---
version: "2"
services:
  smokeping:
    image: linuxserver/smokeping
    container_name: smokeping
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Asia/Singapore
    volumes:
      - /home/pi/smokeping/config:/config
      - /home/pi/smokeping/data:/data
    ports:
      - 8085:80
    restart: unless-stopped
pi@rasping:~/smokeping $ cat smokeping.service
[Unit]
Description=Smoke Ping
After=docker.service
Requires=docker.service

[Service]
WorkingDirectory=/home/pi/smokeping

ExecStartPre=-/usr/bin/docker-compose pull
ExecStartPre=/usr/bin/docker-compose down --remove-orphans
ExecStart=/usr/bin/docker-compose up --force-recreate --remove-orphans
ExecStop=/usr/bin/docker-compose stop

[Install]
WantedBy=multi-user.target

Docker logs


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------


@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Your DockerHost is most likely running an outdated version of libseccomp

To fix this, please visit https://docs.linuxserver.io/faq#libseccomp

Some apps might not behave correctly without this

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-files: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-files: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.18.0.2. Set the 'ServerName' directive globally to suppress this message

Issue templated ignored, please provide the information we request.

I updated the initial report. Is it OK now?

There is something wrong with the latest image.

Same behavior on different machines.

Did you read the log? Your issue is mentioned there.

libseccomp ? I don't follow?

I ran:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 04EE7237B7D453EC 648ACFD622F3D138
echo "deb http://deb.debian.org/debian buster-backports main" | sudo tee -a /etc/apt/sources.list.d/buster-backports.list
sudo apt update
sudo apt install -t buster-backports libseccomp2

Rebooted, and now I get:

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 01-envfile: executing...
[cont-init.d] 01-envfile: exited 0.
[cont-init.d] 10-adduser: executing...

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-files: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-files: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 172.18.0.2. Set the 'ServerName' directive globally to suppress this message
RRDs::info /data/Singapore/NUC.rrd: ERROR: '/data/Singapore/NUC.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/Malaysia/TM.rrd: ERROR: '/data/Malaysia/TM.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/Malaysia/TM.rrd: ERROR: '/data/Malaysia/TM.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/DNS/GoogleDNS1.rrd: ERROR: '/data/DNS/GoogleDNS1.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/Malaysia/TM.rrd: ERROR: '/data/Malaysia/TM.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/DNS/OpenDNS1.rrd: ERROR: '/data/DNS/OpenDNS1.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/DNS/GoogleDNS1.rrd: ERROR: '/data/DNS/GoogleDNS1.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/Malaysia/TM.rrd: ERROR: '/data/Malaysia/TM.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/Singapore/AWS.rrd: ERROR: '/data/Singapore/AWS.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/DNS/GoogleDNS1.rrd: ERROR: '/data/DNS/GoogleDNS1.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/Singapore/SuperInternet.rrd: ERROR: '/data/Singapore/SuperInternet.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.
RRDs::info /data/DNS/CloudflareDNS2.rrd: ERROR: '/data/DNS/CloudflareDNS2.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.

So it's not https://docs.linuxserver.io/faq#libseccomp ... please re-open.

I rolled back to using ghcr.io/linuxserver/smokeping:d249b1e6-ls108 which works. Next steps are to do a bisect between than and latest to try figure out when things went wrong!

jpdsc commented

Can confirm, same issue using anything post version-76bf5908 release.
@kaihendry, version-76bf5908 still works, anything beyond that causes the error.

RRDs::info /data/DNS/Google/8844.rrd: ERROR: '/data/DNS/Google/8844.rrd' is too small (should be 2986716 bytes) at /usr/share/perl5/vendor_perl/Smokeping/RRDtools.pm line 113.

This issue still exist.
The latest version that will work is 76bf5908-ls113 (https://github.com/linuxserver/docker-smokeping/releases/tag/76bf5908-ls113)
After that (ls114, alpine 3.13) the RRD files are bigger.
Old size: 2986708
New size: 2986716
The only thing that works is stop and remove the current container, back-up your old data map, create and start a new container (with the latest image).
This will create new rrd files, with the correct size but you've lost your ping history.