• 0 Posts
  • 2 Comments
Joined 1 year ago
cake
Cake day: October 26th, 2023

help-circle
  • No container backups, just volume backups.

    When you run a program on your PC, say a CAD or an IDE, you won’t backup the software itself, but just data of your projects. The same is for containers. A container is the software, the volumes are your project data. You should store all the configuration of your container (e.g. config files, yaml files, databases directories, deployment files,etc. etc.) in one or more volumes that are persisted on your disk. By the way, the container lose all files not stored in volumes each time your server reboots, so the volume itself is a form of backups between power-ons.

    Backing up containers is not a practice. It is not needed, it must not be done, never. Sometimes you want change the internal environment of your container, and in that case you want create/commit an image to restore that environment. This practice is more correctly called ‘image creation’ whose purpose is clearly not backing up something.

    In ordet to recovery from some sort of disaster, you should backup your volumes and that’s all.


  • Quick aswer: install Nginx Proxy Manager (NPM) and open tcp/udp streams to wherever you want.

    Note that with this configuration you are not reverse proxying it, you are just forwarding stream ports, in a similar way in which your home router operates for portforwarding.

    I had the same problem. Firstly, I gone with iptables configuration, that are useful, but they need much command-line, have not a web UI, need to be statically configured in wireguard with a MASQUERADE option, and need to be persistend with some tool (iptables-persistent). So to open new tunnels/streams you need shutdown wireguard, reconfigure and restart it each time. Someone can say that iptables could be more performant than NPM, but there is no proof of that. I see same performances, but much more usability and manageability with NPM.