Case study: github.com/foxcpp/maddy deployment consists of /var/lib/maddy directory, /etc/maddy/maddy.conf file, /usr/bin/maddy executable with only libc dependency and init system config. What do you need docker for here?
Create software that does not require Docker to have maintainable deployments, prefer software that does not require Docker to have maintainable deployments, keep software with a shitshow of dependencies in containers created using mechanisms that are much more simple than Docker (lxd, nspawn, just chroot jail afer all).
git+ssh+some scripting seems to be the best configuration deployment system.
Take a look:
Firewall configs for hexanet.dev servers are in Git repo. Update takes one 'git push' and two commands on each affected server. Later can be easily improved to be fully automatic using Git hooks. What I am doing wrong?
Why we at $FAMOUS_COMPANY Switched to $HYPED_TECHNOLOGY https://saagarjha.com/blog/2020/05/10/why-we-at-famous-company-switched-to-hyped-technology/
Protocol Labs have little to no incentive to have IPFS working well. It is a project full of not-bad ideas but lacks polish nearly everywhere. Also Protocol Labs missed FileCoin mainnet launch deadline several times already. This tells a lot about company behind IPFS and FileCoin. Do not waste your time on either of these.
Keybase, the company that asks you to upload your private keys to their servers, has just been acquired by Zoom, an essentially Chinese company notorious for having terrible concepts on how encryption should be implemented.
Even if you gave Keybase the benefit of the doubt beforehand, this is corporate suicide at it's most graphic. Delete your Keybase keys. Close your account. Rotate everything that Keybase touched, be that password or cryptomaterial.
The sudo password is a security theater. If untrusted code is isolated, it will be unable to run sudo (or other privilege escalation tool) at all. If untrusted code is not isolated, it has millions of ways to sniff the sudo password. This applies to both server and desktop Linux installations.
Keep your stuff sandboxed. The Evil Systemd, despite being Evil, has a set of useful options for this. Check systemd.service(5).
Here we go.
If somebody wants to try it - clone master branch and do 'git cherry-pick d0e7df023cadb3d7068e5b09509bc562ad63f10b', then run build.sh script as usual.
maddy is getting milter client support once I figure out how to use go-fuzz!
So far testing IPNS performance:
IPNS lookup + fetch using gateway.ipfs.io
1. 17.12 seconds
2. 23 seconds
IPNS lookup + fetch using ipfs.hex.dn42
1. 7.23 seconds
2. 0.147 seconds (cache hit)
3. 0.876 seconds (after node restart, wtf)
IPNS lookup + fetch using cloudflare-ipfs.com:
IPNS lookup + fetch using ipfs.eternum.io
1. 64.49 secs
IPNS lookup + fetch using ipfs.best-practice.se
1. 502 Bad Gateway
go-ipfs 0.5 is released. Promises IPNS performance improvement. Now `ipfs name publish` fails with timeout instead of failing silently after a terribly big amount of time. That is an improvement, I think?
<jrb0001> ansible is slow
<jrb0001> foxcpp: ansible is 7+ minutes for me, and that's just copying files over + restarting stuff if needed. generating all files is a custom tool and takes much less than a second.
(from #dn42 at hackint)
Can even be fully automated via little systemd timer/cron job.
Often heard argument for Docker: security via isolation. As a complete security freak, I think AppArmor combined with simple application https://github.com/foxcpp/scmp-confine for seccomp offers more security with less management overhead. If you want more - you have bubblewrap.
Pragmatic open technology enthusiast.
A general furry public instance. You don't have to be a furry to join. Any and all topics are fair game provided they do not conflict with the Code of Conduct.