Supervising everything


#1

What if I want to see every change to my code, not just source but running code too?
For example I have a Ghost blog using external volume to save changes and in swarm you have many options to share it among nodes all making self hosting a bit harder. My question is what if I use GitLab in swarm attaching data not /srv/gitlab/data:/var/opt/gitlab but myextvol:/var/opt/gitlab?
IMHO everybody would agree on separation of concern like automation in this case. Are there any technical difficulties to achieve a goal similar to watch volume, git add ., commit -m “change at time from container X” and maybe push? ( I’m not sure of the latter as we are in place and we want just mirror among nodes.)
It’s easy to see all the benefits it could bring to the table. In Ghost’s case for example volumes:
- ghost-content:/var/lib/ghost/content
I could easily track every bit of change if I add ghost-content volume to the GitLab stack like a project folder volumes:
- ghost-content:/var/opt/gitlab/ghostproject
If I’m in Ghost’s admin and change something it would commit -m “timestamp from nodeY containerX” and for example from another container from another node like FROM filebrowser/filebroser image composed in the same ghost-content volume commit -m “timestamp from nodeY containerX”