7 ms·
I would be totally on board with using FreeBSD as my primary server OS .. if it had a container engine. There was a port of Docker to FreeBSD, but it's ancient
by djsumdog 7y ago
I would be totally on board with using FreeBSD as my primary server OS .. if it had a container engine. There was a port of Docker to FreeBSD, but it's ancient and unmaintained (before Docker did their big modular refactor).
In theory, you could implement a lot of the Docker Engine API for FreeBSD and on the backend use jails instead of namespaces/cgroups and ZFS if you wanted implement the same layering. Some of the security and cgroup limits may not be implementable on FreeBSD, but with the Linux binary emulation layer, you should still be able to run a lot of containers without modification (unless they need certain filecaps or privileges).
I had OpenBSD on a laptop once, but without 802.11ac support, you'll either have to downgrade the Wi-Fi card in newer laptops or use a USB adapter.
- phonethrowaway 7y agohuh, watchutalkinbout? https://en.m.wikipedia.org/wiki/Bhyve https://en.m.wikipedia.org/wiki/Bhyve
- twblalock 7y agoThat's a hypervisor. It's not the same thing as Docker. Docker is more like jails.
- twblalock 7y agoThe fact that the Docker port was allowed to die is a pretty good indicator of how little interest there is in using FreeBSD in the industry, particularly in cloud environments.
- icedchai 7y ago"jails" are the native solution for FreeBSD. You wouldn't set up a FreeBSD server to run docker.
- twblalock 7y agoMost companies would rather use Docker than jails and that alone is a reason to avoid BSD.
- icedchai 7y agoThat's fine. I've been running various Linux distros since 1993 and FreeBSD since 1996. Each has its strengths and weaknesses.
- pepemon 7y agoAnd how can I run OCI-compliant image straight to the jail? Docker isn't just a namespaced runtime.
- icedchai 7y agoIt's simple: You shouldn't run Docker images on FreeBSD.
- twblalock 7y agoWrong answer. This means you can't run modern cloud-native apps on BSD.
- icedchai 7y agoTell that to companies like Netflix: https://www.phoronix.com/scan.php?page=news_item&px=Netflix-FreeBSD-2019 https://www.phoronix.com/scan.php?page=news_item&px=Netflix-... Not all applications require Docker.
- twblalock 7y agoLast I checked, FreeBSD is only used in their CDN appliances and Netflix is deploying their services in containers on Linux.
- icedchai 7y agoAs I said, Linux and FreeBSD have their strengths and weaknesses. I use both, and definitely wouldn't deploy certain types of applications under FreeBSD.
- dbuder 7y agoYou are probably still right but MIT license means that you just won't see what industry uses. Industry has used free BSDs and not contributed in code or money nearly to the extent that it has for some Linux flavors.
- bluGill 7y agoThe license has nothing to do with that. GPL2 doesn't require industry to contribute back either. I decline to speculate on why industry adopts Linux.
- kls 7y agoA bit of it had to do with the SCO lawsuits, it had a freezing effect on BSD and it's adoption numbers dropped way behind Linux after that and never really recovered.
- wbl 7y agoThat wasn't SCO. It was an earlier set of lawsuits by AT&T because 4.4 BSD had evolved from AT&T unix.
- kls 7y agoYour right, It's been a while and I got the two mixed up. Funny how time can play tricks on memory. It was the AT&T lawsuit. SCO was Linux. Sorry for the misinformation. IIRC Linux had come out a few years before the BSD lawsuit, but I do recall a time when they where neck and neck and BSD started dealing with the legal issues and it just seemed like Linux keep on gaining traction after that.
- nichohel 7y agoThe SCO lawsuit targeted Linux vendors: https://en.wikipedia.org/wiki/SCO%E2%80%93Linux_disputes https://en.wikipedia.org/wiki/SCO%E2%80%93Linux_disputes Earlier a USL (Unix System Lab) lawsuit went after some BSD stuff: https://en.wikipedia.org/wiki/UNIX_System_Laboratories,_Inc._v._Berkeley_Software_Design,_Inc https://en.wikipedia.org/wiki/UNIX_System_Laboratories,_Inc.....
- vladislavp 7y agoFrom what I understand, this was a question and was answered on other forums. FreeBSD jails are supported by HashiCorp's Nomad [1], and their Consul + Vault are in FreeBSD ports The tool mentioned in the article, Bastille, would be used to install popular software into jails. Also ansible works well for pushing software into FreeBSD. There is even an ansible role for nginx that works with FreeBSD that's maintained by nginx team. FreeBSD jails do not insist to have 'one service per jail', shell access is fine too. A jail is pretty well functioning 'compartment' within an OS. Jails work very well with ZFS, one elegant feature, is that one can create a 'base jail', create a zfs snapshot with it, and then copy it over (using zfs) to any new jail created. Sort of like a base template. [2] This makes spawning new jails with base software install rather quick. I do not know if FreeBSD has some interesting Linux features like io uring. On the other hand, Netflix is achieving an impressive 200 Gb/s serving video traffic [3] using FreeBSD - - - Just wanted to mention, that OpenBSD is different than FreeBSD, different kernel, many different user space programs, different team, different primary goals, different hypervisors that they have built-in, etc. Same statement for Dragonfly BSD, same for NetBSD. With regards to issue with OpenBSD 'on a laptop once' I am using 5G wifi running OpenBSD 6.6 on a laptop, not using USB adapter. The driver I am using is iwn0. Works great. Perhaps we have different laptops... [1] https://nomadproject.io/docs/drivers/external/jail-task-driver/ https://nomadproject.io/docs/drivers/external/jail-task-driv... [2] https://www.cyberciti.biz/faq/how-to-configure-a-freebsd-jail-with-vnet-and-zfs/ https://www.cyberciti.biz/faq/how-to-configure-a-freebsd-jai... [3] https://people.freebsd.org/~gallatin/talks/euro2019.pdf https://people.freebsd.org/~gallatin/talks/euro2019.pdf
- RandomTisk 7y agoI wonder if FreeBSD Jails never really caught on that much because of the name.
- viraptor 7y agoI'm not sure about that. Outside of tech, nobody cares what the technology is called. Inside... we've been happily freezing process groups, killing frozen children, and reaping the dead ones. Objecting to jails would be silly at this point.
- zelly 7y agoThe FreeBSD answer to Docker is to not use it. Just go back to the old way of running services on bare metal or VMs. It's not a bad idea, but other people who worship refinement and perfection will get mad at you for it.
- jolux 7y agoGiven as jails started with FreeBSD, no, I would say that running services on the bare metal is not the FreeBSD answer.
- astrange 7y agoIf you use the built in tools, FreeBSD leans towards telling you to just install ports/pkgs and then start them jailless. Your machine becomes a pet experiment in short order. I also find it weird that each jail has its own copy of all of userland. It's a lot easier to use macOS sandboxing, certainly it saves more disk space. And I feel like I'll forget to update them.
- jolux 7y agoYep. I’m not sure I agree about user land but jailing everything is definitely not the default. It’s there if you want it and know what you’re doing, though.
- rsync 7y ago"I would be totally on board with using FreeBSD as my primary server OS .. if it had a container engine." FreeBSD is the original container engine - although, for the sake of completeness, we should count Solaris "zones" and call it a tie ... I think there is a cultural and temporal connotation of Docker - and the use-cases that it typically enabled - that makes it seem very different than 'jail' but make no mistake: jail did all of those things and more, many years earlier. The VPS, as we currently think of it, was built first[1] on top of FreeBSD and jail. [1] JohnCompanies announced beta availability of "server instances" on 303 and cDc mailing lists in mid 2001. Someone else coined the term "VPS" a bit later ...
- twblalock 7y agoBeing first doesn’t matter. Docker became the industry standard and jails did not.
- xorcist 7y agoAccording to Wikipedia, FreeBSD jails were available in a release version in 2000. Linux had Virtuozzo in 2001, explicitly for the use case we would call VPS today. Solaris didn't have zones until 2005.
- AsyncAwait 7y agoIt's mainly that the Docker interface is easier to use, in fact I don't know of any Jails frontend that comes close. Also, at this point it would need to support the same image format and be very obviously better to see wide adoption.
- rkeene2 7y agoLinux VServers came out around the same time (2001) [0], so the claim about "many years earlier" is spurious without being more specific about which things it did earlier. [0] http://linux-vserver.org/Frequently_Asked_Questions#Is_this_a_new_project.3F_When_was_it_started.3F http://linux-vserver.org/Frequently_Asked_Questions#Is_this_...
- otabdeveloper4 7y agoDocker in 2020 is, for 95% of the use cases [1], nothing but a better packaging format than .tar.gz. I'm sure you could throw away the isolation bits and it would still be as popular. [1] Totally scientific figure, of course.
- cpach 7y agoYou might want to have a look at Bastille, a “system for automating deployment and management of containerized applications on FreeBSD”. https://bastillebsd.org/ https://bastillebsd.org/
- agapon 7y agoThat's probably not what you are looking for, but FreeBSD has some container infrastructure around it. E.g., https://www.bsdstore.ru/en/about.html https://www.bsdstore.ru/en/about.html