Host details:

cat /etc/os-release 
PRETTY_NAME="Debian GNU/Linux forky/sid"
NAME="Debian GNU/Linux"
VERSION_CODENAME=forky
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

lscpu
Architecture:                x86_64
  CPU op-mode(s):            32-bit, 64-bit
  Address sizes:             39 bits physical, 48 bits virtual
  Byte Order:                Little Endian
CPU(s):                      4
  On-line CPU(s) list:       0-3
Vendor ID:                   GenuineIntel
  Model name:                Intel(R) Core(TM) i5-6500T CPU @ 2.50GHz
  
free -h
               total        used        free      shared  buff/cache   available
Mem:            15Gi       1.3Gi        11Gi        19Mi       3.0Gi        14Gi
Swap:          3.7Gi          0B       3.7Gi

sudo df -h
Filesystem               Size  Used Avail Use% Mounted on
udev                     7.7G     0  7.7G   0% /dev
tmpfs                    1.6G  1.2M  1.6G   1% /run
/dev/mapper/vg00-lvroot  919M   25M  831M   3% /
/dev/mapper/vg00-lvusr    16G  7.8G  7.2G  53% /usr
tmpfs                    7.8G     0  7.8G   0% /dev/shm
none                     1.0M     0  1.0M   0% /run/credentials/systemd-journald.service
tmpfs                    7.8G     0  7.8G   0% /tmp
/dev/nvme0n1p1           447M  158M  261M  38% /boot
/dev/mapper/vg00-lvhome   16G  9.8G  5.2G  66% /home
/dev/mapper/vg00-lvvar    32G   10G   21G  34% /var
/dev/mapper/vg00-lvopt   1.8G  305M  1.4G  18% /opt
/dev/mapper/vg01-lvexp   504G  114G  370G  24% /export
overlay                   32G   10G   21G  34% /var/lib/docker/overlay2/739eaaea802215fc025147f6105ab7051537406a837b52f2a248d8c1b14210de/merged
overlay                   32G   10G   21G  34% /var/lib/docker/overlay2/46dc43adecd4f0a373428c5a551ab2ec080c6e2ff46c2c3abc861004ce0ed24e/merged
overlay                   32G   10G   21G  34% /var/lib/docker/overlay2/d4ebac31792da0bd55d1fd6ca5a214fd8443508217b0ab500c41362628599fcc/merged
none                     1.0M     0  1.0M   0% /run/credentials/getty@tty1.service
tmpfs                    1.6G  4.0K  1.6G   1% /run/user/1000
overlay                   32G   10G   21G  34% /var/lib/docker/overlay2/339913776a290aef53913f24b4eba5ecfa8889e093112a979cfecd144bb10850/merged
overlay                   32G   10G   21G  34% /var/lib/docker/overlay2/69d913eb06cd11c63bf93aea1f061e37983d3bda01524bbdc2164886c00b7251/merged
:/volume1/obs/raw        5.2T  3.9T  1.4T  75% /var/lib/docker/volumes/satnogs-1696_obs-raw/_data

Docker compose (portainer stack)

services:

  rigctld:
    container_name: satnogs-1696-rigctld
    image: 'librespace/hamlib:4.5.4'
    user: '999'
    read_only: true
    environment:
      MODEL: '1'
    restart: 'unless-stopped'
    command: 'rigctld'
    labels:
      - 'com.centurylinklabs.watchtower.enable=true'

  satnogs_client:
    container_name: satnogs-1696
    hostname: 'satnogs-1696'
    image: 'librespace/satnogs-client:latest'
    # image: 'librespace/satnogs-client:master'
    user: '500:500'
    read_only: false
    device_cgroup_rules:
      - 'c 189:* rwm'
    environment:
      SATNOGS_API_TOKEN: 'secret'
      SATNOGS_LOG_LEVEL: 'INFO'
      SATNOGS_SCHEDULER_LOG_LEVEL: 'CRITICAL'
      SATNOGS_ARTIFACTS_ENABLED: 'True'
      SATNOGS_ARTIFACTS_API_TOKEN: 'secret'
      SATNOGS_STATION_ELEV: '5'
      SATNOGS_STATION_ID: '1696'
      SATNOGS_STATION_LAT: '51.721268'
      SATNOGS_STATION_LON: '5.029'
      SATNOGS_RIG_IP: 'satnogs-1696-rigctld'
      SATNOGS_POST_OBSERVATION_SCRIPT: '/var/lib/satnogs-client/bin/satnogs-post {{ID}} {{FREQ}} {{TLE}} {{TIMESTAMP}} {{BAUD}} {{SCRIPT_NAME}}'
      GR_SATELLITES_ENABLED: 'false'
      GR_SATELLITES_APP: 'gr_satellites'
      GR_SATELLITES_KEEPLOGS: 'true'
      # GR_SATELLITES_ZMQ_PORT: '5555'
      # UDP_DUMP_HOST: '127.0.0.1'
      # UDP_DUMP_PORT: '51696'
      ENABLE_IQ_DUMP: 'True'
      IQ_DUMP_FILENAME: '/raw/iq_1696'
      IQ_DUMP_RENAME: 'True'
      IQ_DUMP_COMPRESS: 'True'
      #
      SATNOGS_SOAPY_RX_DEVICE: 'driver=airspy,biastee=false'
      SATNOGS_RX_SAMP_RATE: '2.5e6'
      SATNOGS_GAIN_MODE: 'Settings Field'
      SATNOGS_ANTENNA: 'RX'
      SATNOGS_OTHER_SETTINGS: 'VGA=10,MIX=0,LNA=9'
    command: 'satnogs-client'
    
    volumes:
      - /dev/bus/usb:/dev/bus/usb
      - type: 'tmpfs'
        target: '/tmp'
      - type: 'volume'
        target: '/var/lib/satnogs-client'
        source: 'satnogs-client'
      - type: 'volume'
        target: '/usr/lib/python3/dist-packages/satellites/satyaml'
        source: 'satyaml'
      - type: 'volume'
        target: '/raw'
        source: 'obs-raw'

    restart: 'unless-stopped'
    labels:
      - 'com.centurylinklabs.watchtower.enable=true'

volumes:
  satnogs-client:
  satyaml:
  obs-raw:
    driver: local
    driver_opts:
      type: nfs
      o: addr=mybck.local,nfsvers=3,async,rw
      device: :/volume1/obs/raw


cat satnogs-post
#!/usr/bin/env bash
# SATNOGS_POST_OBSERVATION_SCRIPT="satnogs-post {{ID}} {{FREQ}} {{TLE}} {{TIMESTAMP}} {{BAUD}} {{SCRIPT_NAME}}"

${HOME}/bin/iq_dump_rename.sh "$@"
#grsat.py stop "$@"
#satdump.sh stop "$@"
#meteor.sh stop "$@"
#bandscan.sh start
#direwolf.sh start
#rotor-park.sh

cat iq_dump_rename.sh

#!/usr/bin/env bash
# suggested variables to set in config
# ENABLE_IQ_DUMP="True"
# IQ_DUMP_FILENAME="/srv/iq"
# IQ_DUMP_RENAME="True"
# IQ_DUMP_COMPRESS="True"

if [[ "${ENABLE_IQ_DUMP^^}" =~ (TRUE|YES|1) ]] && [[ "${IQ_DUMP_RENAME^^}" =~ (TRUE|YES|1) ]]; then
    SAMP=$(${HOME}/bin/find_samp_rate.py "$5" "$6")
    NAME="${IQ_DUMP_FILENAME}_${1}_${2}_${SAMP}.raw"
    mv "${IQ_DUMP_FILENAME}"_cs16_*.raw "${NAME}"
    if [[ "${IQ_DUMP_COMPRESS^^}" =~ (TRUE|YES|1) ]]; then
        # zstd --no-progress --rm -f "${NAME}"
        # tar zcf "${NAME}" "${NAME}".tar.gz --remove-files
        gzip --fast --quiet "${NAME}"
    fi
fi

# Check if there is a cs16 file leftover.
find /raw -wholename "${IQ_DUMP_FILENAME}"_cs16_\*.raw -delete

