3 ms·
“Prefer” is a subjective term. For the same use case some people might prefer FreeBSD, while others will prefer Linux. Personally I prefer FreeBSD as an operat
by hnlmorg 3y ago
“Prefer” is a subjective term. For the same use case some people might prefer FreeBSD, while others will prefer Linux.
Personally I prefer FreeBSD as an operating system but the lack of Docker keeps me stuck to Linux (I don’t even like Docker but at this stage it’s now the de facto standard for packaging containers).
- kykeonaut 3y agoTrue, but one of the advantages of the BSDs is that they provide an alternative way of doing things. For FreeBSD, you have Jails with Pot and Potluck and other alternatives. It might not be the de facto way of doing things, but the BSDs have never really been keen on following the standard way at the cost of everything else.
- hnlmorg 3y agoI’ve used jails since FeeeBSD 7 or 8 and love them. For me, the power of Docker is less about the OCI format (whatever it’s called) and more about Dockerfiles. If Jails could work against Dockerfiles then that would be a massive step forward. Though to be fair I haven’t tried Pot. Used ez_jails a lot in the past, as well as rolling my own build scripts. So maybe I’m missing a trick?
- sunshine-o 3y agoThis is what has been scaring me about Linux in the last 10 years as it seems we have been talking mostly about containers & ended up in a strange place: - a lot of project distribute a docker image or we have community "distributions" like linuxserver.io. But nothing come close to a good distribution package management so far, - the security of containers is still very unclear, misunderstood & unequal, - the ecosystem is now fragmented between docker, podman, etc. - generally it feels like things have become more complicated ! We also now do see new generation (?) of distributions centered around containers like CoreOS, MicroOS or even Silverblue. My questions would be: is the BSD world trying go move this way too with bsdpot & potluck or consider this is not the way to go or this just a distraction and Ports will always be the way to distribute software?
- soupbowl 3y agoI run FreeBSD as my host and pass data into linux VMs with bhyve 9p protocol support. This way I can have my docker data on my FreeBSD host's ZFS. Just pointing out another option, but it also depends on what type of stuff you are doing.
- hnlmorg 3y agoThis sounds interesting. Got any more details about it?
- soupbowl 3y agoI'll give a few pointers, I have done this with Debian and NixOS as well as docker and podman, currently I use NixOS/podman and that is all I have for examples. If you were using debian you would use a mount command with the Fstype and options below. In a bhyve vm config file you add 'bhyve_options' and add some virtio-9p mount points. they are 'per slot' so each of these mounts will need a new number '-s 15' '-s 16' as in my below example. on FreeBSD host, assuming you are using bhyve-vm (works with plain bhyve also): /usr/local/vm/nixos/nixos.conf bhyve_options="-s 15,virtio-9p,podman-archivebox=/HOSTZFS/Services/VM/NixOS/ArchiveBox -s 16,virtio-9p,podman-music=/HOSTZFS/Audio/Music/Flac" in VM (nixos): fileSystems."/mnt/podman-archivebox" = { device = "podman-archivebox"; fsType = "9p"; options = [ "trans=virtio" "version=9p2000.L" "_netdev" "cache=loose" ]; }; fileSystems."/mnt/podman-music" = { device = "podman-music"; fsType = "9p"; options = [ "trans=virtio" "version=9p2000.L" "_netdev" "cache=loose" "ro" ]; }; If you were not using NixOS, add your mount points in the VM (/mnt/podman-archivebox, /mnt/podman-music). Then mount them with your docker/podman setup. virtualisation.oci-containers.containers."ArchiveBox" = { image = "archivebox/archivebox"; ... ... volumes = [ "archivebox_data:/data" "/mnt/podman-archivebox/archive:/data/archive" "/mnt/podman-archivebox/sources:/data/sources" "/mnt/podman-archivebox/ArchiveBox.conf:/data/ArchiveBox.conf" ]; virtualisation.oci-containers.containers."navidrome" = { image = "deluan/navidrome:latest"; ... ... volumes = [ "navidrome_data:/data" "/mnt/podman-music:/music:ro" ]; }; The 9p mount points won't get passed into the VM until you STOP the VM and then START the VM (restart won't work). Once that is done and you can confirm the files are passed through and working, things 'just work'. This does not work for things that require file locks like passing database files through 9p. Hope this is helpful to someone.