Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[SUPPORT] stephondoestech - UnraidConfigGuardian

Featured Replies

I can confirm that I'm able to do consecutive backups now after updating to V1.3.1

  • Replies 122
  • Views 12.9k
  • Created
  • Last Reply

Top Posters In This Topic

Most Popular Posts

  • stephondoestech
    stephondoestech

    Hey folks! Sorry I've been quiet. Pesky real job was keeping me busy. So after reviewing a lot of the valuable feedback I received I wanted to focus on bringing forward the features that were most imp

  • Giving this a go now, while the appdata backup plugin does some of this - restoring data is the pain in the butt part. It'd be good if you could make a dedicated section in the readme for the "restore

  • very promising app, clean and fast! Thank you for all your efforts. I submitted an enhancement request to also scan stopped dockers.

Posted Images

4 hours ago, Zak501 said:

I can confirm that I'm able to do consecutive backups now after updating to V1.3.1

Same here. I run 2 servers. One upgraded and worked perfectly. The other one I had to completely remove and reinstall. Then worked perfectly too. More a paladin config issue I think. Great work!!

Edited by paladin

Thank you OP for making this application. I was able to set it up and backup all of my containers.

Between this app and the Appdata Backup plugin, I hope that's all I need if I ever have to recover all of my containers and their settings.

image.png

image.png

Hello, I noticed today that Guardian shows some sample dockers. Don't show my containers.
image.png

Hey folks,

since a couple weeks, I have a strange issue. The WebUI stopped working.

When I want to access the WebUI, I simply get a ERR_CONNECTION_REFUSED error. I don't really get why.

docker run
  -d
  --name='UnraidConfigGuardian'
  --net='bridge'
  --pids-limit 2048
  -e TZ="Europe/Berlin"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="hostname"
  -e HOST_CONTAINERNAME="UnraidConfigGuardian"
  -e 'PUID'='0'
  -e 'PGID'='0'
  -e 'TZ'='Europe/Berlin'
  -e 'SCHEDULE'='45 6 * * 0'
  -e 'MASK_PASSWORDS'='true'
  -e 'NCLUDE_SYSTEM_INFO'='true'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:8080]'
  -l net.unraid.docker.icon='https://raw.githubusercontent.com/stephondoestech/unraid-config-guardian/main/assets/favicon_io/android-chrome-192x192.png'
  -p '7842:8080/tcp'
  -v '/mnt/cache1_docker/appdata/UnraidConfigGuardian':'/config':'rw'
  -v '/mnt/user/BackUps/unraid-docs':'/output':'rw'
  -v '/boot':'/boot':'ro'
  -v '/var/run/docker.sock':'/var/run/docker.sock':'ro' 'stephondoestech/unraid-config-guardian:latest'

The log looks good:

INFO:     Started server process [1]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:7842 (Press CTRL+C to quit)
Caching Unraid system information...
Cached hostname: hostname
Cached Unraid version: 7.1.4
Template directory accessible
Cached 23 XML templates to /output/cached-templates
Setting up user permissions: PUID=0, PGID=0
User setup complete: guardian user now has UID=0, GID=0
Setting up cron job with schedule: 45 6 * * 0
 Starting Unraid Config Guardian Web GUI on http://0.0.0.0:7842
 Access via: http://your-unraid-ip:7842

Anybody out there experiencing the same?
Thanks a lot in advance.

Edited by receens2k

On 10/5/2025 at 8:38 PM, MarianKoniuszko said:

Hello, I noticed today that Guardian shows some sample dockers. Don't show my containers.
image.png

I am one step further with my problem (tried the compose-deployment) and I've had the same error like you.
I think this is mock data according to log-error:

Cannot connect to Docker daemon:
Error while fetching server API version: ('Connection aborted.', FileNotFoundError(2, 'No such file or directory'))
Current DOCKER_HOST: tcp://docker-socket-proxy:2375


The docker-socket could not be reached.

I have solved the problem with

  • dockersocket: adding IMAGES=1 and SERVICES=1 to environment variables

  • config guardian: adding depends_on dockersocket

  • config guardian: adding DOCKER_HOST=tcp://dockersocket:2375

services:
  dockersocket:
    image: ghcr.io/tecnativa/docker-socket-proxy:latest
    container_name: ucg-stack-dockersocket
    restart: unless-stopped
    environment:
      - CONTAINERS=1
      - IMAGES=1
      - SERVICES=1
      - NETWORKS=1
      - TASKS=1
      - SYSTEM=1
      - POST=0
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    networks:
      - unraid-guardian
    labels:
      - net.unraid.docker.icon=https://raw.githubusercontent.com/ibracorp/app-logos/main/docker/docker-logo.png
  
  unraid-config-guardian:

    image: stephondoestech/unraid-config-guardian:latest
    container_name: ucg-stack-app
    restart: unless-stopped
    depends_on:
      - dockersocket
    environment:
      # Unraid user/group mapping
      - PUID=99                    # nobody user
      - PGID=100                   # users group
      - TZ=Europe/Berlin           # Adjust to your timezone

      # Backup configuration
      #- SCHEDULE=45 6 * * 0         # Weekly Sunday at 06:45 AM
      - BACKUP_LOCATION=/output
      - MASK_PASSWORDS=true
      - INCLUDE_SYSTEM_INFO=true
      - DEBUG=false
      - DOCKER_HOST=tcp://dockersocket:2375
      - DOCKER_SOCK_PATH=tcp://dockersocket:2375
      - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

      # Optional: Notification settings
      # - WEBHOOK_URL=https://hooks.slack.com/services/your/webhook/url
      # - [email protected]

    volumes:
      # Application configuration
      - /mnt/cache1_docker/appdata/UnraidConfigGuardian:/config

      # Output directory for generated documentation
      - /mnt/user/BackUps/unraid-docs:/output

      # Unraid flash drive configuration (read-only)
      - /boot:/boot:ro

      # Optional: Additional system paths for comprehensive backup
      # - /mnt/user:/mnt/user:ro
      # - /etc/unraid:/etc/unraid:ro
      # - /var/run/docker.sock:/var/run/docker.sock

    networks:
      - unraid-guardian

    # Web interface port
    ports:
      - "7842:7842"

    # Security settings
    #security_opt:
      #- no-new-privileges:true

    # Resource limits
    mem_limit: 1g
    cpus: 0.5

    # Health check
    healthcheck:
      test: ["CMD", "python", "src/health_check.py"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s
    
    labels:
      - net.unraid.docker.icon=https://raw.githubusercontent.com/stephondoestech/unraid-config-guardian/main/assets/favicon_io/android-chrome-192x192.png
  

networks:
  unraid-guardian:
    driver: bridge

Edited by receens2k

@stephondoestech

It seems the docker webui no longer works which i've just noticed. Another user above has reported it too so it's not just me

On 10/7/2025 at 10:06 AM, receens2k said:

Hey folks,

since a couple weeks, I have a strange issue. The WebUI stopped working.

When I want to access the WebUI, I simply get a ERR_CONNECTION_REFUSED error. I don't really get why.

docker run
  -d
  --name='UnraidConfigGuardian'
  --net='bridge'
  --pids-limit 2048
  -e TZ="Europe/Berlin"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="hostname"
  -e HOST_CONTAINERNAME="UnraidConfigGuardian"
  -e 'PUID'='0'
  -e 'PGID'='0'
  -e 'TZ'='Europe/Berlin'
  -e 'SCHEDULE'='45 6 * * 0'
  -e 'MASK_PASSWORDS'='true'
  -e 'NCLUDE_SYSTEM_INFO'='true'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:8080]'
  -l net.unraid.docker.icon='https://raw.githubusercontent.com/stephondoestech/unraid-config-guardian/main/assets/favicon_io/android-chrome-192x192.png'
  -p '7842:8080/tcp'
  -v '/mnt/cache1_docker/appdata/UnraidConfigGuardian':'/config':'rw'
  -v '/mnt/user/BackUps/unraid-docs':'/output':'rw'
  -v '/boot':'/boot':'ro'
  -v '/var/run/docker.sock':'/var/run/docker.sock':'ro' 'stephondoestech/unraid-config-guardian:latest'

The log looks good:

INFO:     Started server process [1]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:7842 (Press CTRL+C to quit)
Caching Unraid system information...
Cached hostname: hostname
Cached Unraid version: 7.1.4
Template directory accessible
Cached 23 XML templates to /output/cached-templates
Setting up user permissions: PUID=0, PGID=0
User setup complete: guardian user now has UID=0, GID=0
Setting up cron job with schedule: 45 6 * * 0
 Starting Unraid Config Guardian Web GUI on http://0.0.0.0:7842
 Access via: http://your-unraid-ip:7842

Anybody out there experiencing the same?
Thanks a lot in advance.

How did you fix the webui to work again please? as i'm getting the same

Hey, I have switched from the installation via Unraid Apps to installation via docker-compose according to https://github.com/stephondoestech/unraid-config-guardian/blob/main/docker-compose.yml

I have made slight changes, because my portainer instance throws errors on the latest LTS release, when I want to build dockers from compose files.

Here is my current working compose:

On 10/7/2025 at 11:27 AM, receens2k said:

services:
  dockersocket:
    image: ghcr.io/tecnativa/docker-socket-proxy:latest
    container_name: ucg-stack-dockersocket
    restart: unless-stopped
    environment:
      - CONTAINERS=1
      - IMAGES=1
      - SERVICES=1
      - NETWORKS=1
      - TASKS=1
      - SYSTEM=1
      - POST=0
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:ro
    networks:
      - unraid-guardian
    labels:
      - net.unraid.docker.icon=https://raw.githubusercontent.com/ibracorp/app-logos/main/docker/docker-logo.png
  
  unraid-config-guardian:
    image: stephondoestech/unraid-config-guardian:latest
    container_name: ucg-stack-app
    restart: unless-stopped
    depends_on:
      - dockersocket
    environment:
      # Unraid user/group mapping
      - PUID=99                    # nobody user
      - PGID=100                   # users group
      - TZ=Europe/Berlin           # Adjust to your timezone

      # Backup configuration
      - SCHEDULE=45 6 * * 0         # Weekly Sunday at 06:45 a.m.
      - BACKUP_LOCATION=/output
      - MASK_PASSWORDS=true
      - INCLUDE_SYSTEM_INFO=true
      - DEBUG=false
      
      # Docker socket proxy connection (requires docker-socket-proxy container)
      - DOCKER_HOST=tcp://dockersocket:2375

      # Optional: Notification settings
      # - WEBHOOK_URL=https://hooks.slack.com/services/your/webhook/url
      # - [email protected]

    volumes:
      # Application configuration
      - /mnt/cache1_docker/appdata/UnraidConfigGuardian:/config

      # Output directory for generated documentation
      - /mnt/user/BackUps/unraid-docs:/output

      # Unraid flash drive configuration (read-only)
      - /boot:/boot:ro

      # Optional: Additional system paths for comprehensive backup
      # - /mnt/user:/mnt/user:ro
      # - /etc/unraid:/etc/unraid:ro

    networks:
      - unraid-guardian

    # Web interface port
    ports:
      - "7842:7842"

    # Security settings
    security_opt:
      - no-new-privileges:true

    # Resource limits
    mem_limit: 1g
    cpus: 0.5

    # Health check
    healthcheck:
      test: ["CMD", "python", "src/health_check.py"]
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s
    
    labels:
      - net.unraid.docker.icon=https://raw.githubusercontent.com/stephondoestech/unraid-config-guardian/main/assets/favicon_io/android-chrome-192x192.png
  

networks:
  unraid-guardian:
    driver: bridge

For me it is working so far, except two things:

  1. the scheduler from inside the docker is not working (python not found error)
    I have tried different things to make it work, but no success. I switched to call the "manual adhoc backup" from the readme via user scripts (https://github.com/stephondoestech/unraid-config-guardian/blob/main/README.md#manual-usage)

    
    # Generate backup now 
    docker exec unraid-config-guardian python3 src/unraid_config_guardian.py

    I create weekly backups to another NAS with SpaceinvaderOnes Backup-Tool (https://github.com/SpaceinvaderOne/Unraid-Rsync-Backup-and-Sync-Tool/tree/main). My Pre-ruin-script shuts down my VMs and dockers, so I start the unraid-configuration-guardian-stack before that step, create a backup locally and then the main-backup-script starts.

  2. The internal health-check says the docker-socket cannot be reached, but in the unraid-configuration-guardian webui I see all my dockers, as well as in the backup files, so I assume I can ignore this for now

Edited by receens2k

  • 3 weeks later...

Has anyone ever had to perform disaster recovery on an unraid server using UnraidConfigGuardian? What was your experience?

discovered this just now, can someone elaborate the difference between using just this and appdata backup plugin?

i already have duplicati setup, but wondering what this adds

Hi, thanks for this nice software! I installed it and it work great, only side effect is that my disk do not stop spinning after 15min when I run this Docker. If I stop this Docker, the disk go to sleeping mode the way I set it up after 15min.

Any chance to avoid this effect?

Best, Michael

On 10/10/2025 at 7:53 AM, Slippin' Jimmy said:

@stephondoestech

It seems the docker webui no longer works which i've just noticed. Another user above has reported it too so it's not just me

I am having the same problem.... came here to find solution

On 10/7/2025 at 5:06 AM, receens2k said:

Hey folks,

since a couple weeks, I have a strange issue. The WebUI stopped working.

When I want to access the WebUI, I simply get a ERR_CONNECTION_REFUSED error. I don't really get why.

docker run
  -d
  --name='UnraidConfigGuardian'
  --net='bridge'
  --pids-limit 2048
  -e TZ="Europe/Berlin"
  -e HOST_OS="Unraid"
  -e HOST_HOSTNAME="hostname"
  -e HOST_CONTAINERNAME="UnraidConfigGuardian"
  -e 'PUID'='0'
  -e 'PGID'='0'
  -e 'TZ'='Europe/Berlin'
  -e 'SCHEDULE'='45 6 * * 0'
  -e 'MASK_PASSWORDS'='true'
  -e 'NCLUDE_SYSTEM_INFO'='true'
  -l net.unraid.docker.managed=dockerman
  -l net.unraid.docker.webui='http://[IP]:[PORT:8080]'
  -l net.unraid.docker.icon='https://raw.githubusercontent.com/stephondoestech/unraid-config-guardian/main/assets/favicon_io/android-chrome-192x192.png'
  -p '7842:8080/tcp'
  -v '/mnt/cache1_docker/appdata/UnraidConfigGuardian':'/config':'rw'
  -v '/mnt/user/BackUps/unraid-docs':'/output':'rw'
  -v '/boot':'/boot':'ro'
  -v '/var/run/docker.sock':'/var/run/docker.sock':'ro' 'stephondoestech/unraid-config-guardian:latest'

The log looks good:

INFO:     Started server process [1]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:7842 (Press CTRL+C to quit)
Caching Unraid system information...
Cached hostname: hostname
Cached Unraid version: 7.1.4
Template directory accessible
Cached 23 XML templates to /output/cached-templates
Setting up user permissions: PUID=0, PGID=0
User setup complete: guardian user now has UID=0, GID=0
Setting up cron job with schedule: 45 6 * * 0
 Starting Unraid Config Guardian Web GUI on http://0.0.0.0:7842
 Access via: http://your-unraid-ip:7842

Anybody out there experiencing the same?
Thanks a lot in advance.

I came here for the same reason, glad Im not the only one

  • 4 weeks later...
  • Author

Apologies for being so quiet everyone. Life was doing it's thing. I just move release notes to Github exclusively as folks are more likely to look there. Release v1.5.0 is live. I'm also now using codex in this project to assist me with feature development and troubleshooting.

https://github.com/stephondoestech/unraid-config-guardian/releases/tag/v1.5.0

@MichaelD Let me look into that. I haven't seen that issue yet, but that doesn't mean it's not there. Before you stopped the container were there any errors you could see?

Edited by stephondoestech

Ever since this switched to using docker socket I can't get it to work. Added the images variable and config guardian still acts like its not there. Not sure what the problem is.

ERROR:root:Cannot connect to Docker daemon: Error while fetching server API version: HTTPConnectionPool(host='dockersocket-ip', port=2375): Max retries exceeded with url: /version (Caused by NameResolutionError("<urllib3.connection.HTTPConnection object at 0x14e059cb5810>: Failed to resolve 'dockersocket-ip' ([Errno -2] Name or service not known)"))

ERROR:root:Make sure Docker Socket Proxy is running and accessible

ERROR:root:Current DOCKER_HOST: tcp://dockersocket-ip:2375

Docker not available, using mock data: Error while fetching server API version: HTTPConnectionPool(host='dockersocket-ip', port=2375): Max retries exceeded with url: /version (Caused by NameResolutionError("<urllib3.connection.HTTPConnection object at 0x14e059cb5810>: Failed to resolve 'dockersocket-ip' ([Errno -2] Name or service not known)"))

Edited by Spexor

  • 2 weeks later...
On 12/4/2025 at 4:50 AM, Spexor said:

Ever since this switched to using docker socket I can't get it to work. Added the images variable and config guardian still acts like its not there. Not sure what the problem is.

ERROR:root:Cannot connect to Docker daemon: Error while fetching server API version: HTTPConnectionPool(host='dockersocket-ip', port=2375): Max retries exceeded with url: /version (Caused by NameResolutionError("<urllib3.connection.HTTPConnection object at 0x14e059cb5810>: Failed to resolve 'dockersocket-ip' ([Errno -2] Name or service not known)"))

ERROR:root:Make sure Docker Socket Proxy is running and accessible

ERROR:root:Current DOCKER_HOST: tcp://dockersocket-ip:2375

Docker not available, using mock data: Error while fetching server API version: HTTPConnectionPool(host='dockersocket-ip', port=2375): Max retries exceeded with url: /version (Caused by NameResolutionError("<urllib3.connection.HTTPConnection object at 0x14e059cb5810>: Failed to resolve 'dockersocket-ip' ([Errno -2] Name or service not known)"))

I - Newbie to all this Unraid Stuff - had the same problems, and thanks to this simple but awesome guide on YouTube (https://www.youtube.com/watch?v=NxgMjv2IgIU - Protect Your Unraid Setup from Disaster 🔥 | Docker Auto-Backup with Config Guardian by AlienTech42), I realized that I hadn't created a custom network for DockerSocket and UnraidGuardian to communicate with each other.

I had managed to connect UnraidGuardian to DockerSocket without creating a custom network, but the container list only showed templates instead of my Docker containers.

I also had to change the setting from tcp://dockersocket-ip:2375 to tcp://dockersocket:2375.

It would be good if this information were included alongside the information that you have to create the IMAGE variable.

For anyone having the issue with it just showing 3 non exiting containers..

Try changing the Network Type to Host in the dockersocket setup..

  • 1 month later...

im still getting this error Backup failed: [Errno 13] Permission denied: '/boot/config/plugins/dockerMan/templates-user' and im on v1.6.0

  • 4 weeks later...

Forgive me in advance if I am going about this the wrong way, and if so, please re-direct me.

I installed Unraid Config Guardian and ran into an issue. During the configuration, I tried to set the "Mask Passwords" to false, default is "true", so that the "unraid-config.json" file shows the passwords that I have used in each of the containers. I set this field to "false" and when I preview the "unraid-config.json" file to view the information that has been backed up, all of the passwords are marked "MASKED". How do I fix this so that I can see the passwords if I need to do a server restore using the backup?

Thank you!

  • 1 month later...

I can only seem to generate backups with passwords masked, even with the option set to false. Has anyone else had this issue or been able to generate a backup with unmasked passwords?

  • 2 weeks later...
  • 1 month later...

Can the "Output" be set to a mounted and shared external drive on a Unraid Server?

Currently I have all my backup's going to an External USB drive hooked up to my 1st Unraid Server. Then once a week that drive's contents is copied over to another Unraid Server's internal storage.

I tried to point UnraidConfigGuardian to the shared External USB drive (mounted on 1st Server), but it fails. The templates cache-templates get written to it, then the rest fails.

1.jpg

  • 1 month later...

Whats when the IP from the Docker Socket changed? I don't see an Option to set a fixed IP for that?

For example actually 172.17.0.100 on the next Docker Container Restart or Server Reboot its the IP 172.17.0.50. The IP in the Guardian Config Template are the old one and no more working because of that.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.