4 ms·
K8s and Docker are purely Linux things. Use Linux for that. Its like you would say "I really like these Jails, on which Linux distribution I can run them on?" :
by vermaden 4y ago
K8s and Docker are purely Linux things. Use Linux for that. Its like you would say "I really like these Jails, on which Linux distribution I can run them on?" :) On FreeBSD You use Jails and Bhyve.
Some other whys for FreeBSD here:
- https://vermaden.wordpress.com/2020/09/07/quare-freebsd/ https://vermaden.wordpress.com/2020/09/07/quare-freebsd/
- DeathArrow 4y ago>K8s and Docker are purely Linux things. Which I happen to know. But it was an example. If I am going to switch to FreeBSD it has to run the software I need, not to merely provide alternatives. And it has to do it better. Saying that FreeBSD has jails as an alternative is akin to saying Linux has Gimp as an alternative to Photoshop. Not many are going to switch operating systems to use Gimp instead of Photoshop.
- Gud 4y agoHow do you think jails compares to docker? I have never used docker myself but I always thought the way FreeBSD jails works is awesome.
- vermaden 4y agoDocker is just namespaces and cgroups. You do not have separation between host and the containers on Linux - you need additional software for that - like AppArmor or SELinux. The FreeBSD Jails are secure and separated from the host on the contrary. FreeBSD Host can access Jails but Jails can not access Host resources - unless consciously configured to do so. As for the usage ... FreeBSD Jails can have their OWN network stack (with own firewall and interfaces) while Docker can only use Linux network namespaces. You can launch/start a single process Jail and a single process Docker - here they are similar. You can also unpack entire operating system userland in both and it will also run - with own packages database etc. Hope that helps.
- samoit 4y agoYou can also use linux containers (LXC) which are basically "freebsd jails for linux". If you want something easy to use, you can try Promox.
- akx 4y agoYou do know that Docker applies AppArmor by default, right..? https://docs.docker.com/engine/security/apparmor/ https://docs.docker.com/engine/security/apparmor/
- vermaden 4y ago... on RHEL/CentOS/Alma/Rocky Linux which use SELinux instead? :)
- akx 4y agoNot an RH guy, but apparently https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux_atomic_host/7/html/container_security_guide/docker_selinux_security_policy https://access.redhat.com/documentation/en-us/red_hat_enterp...
- Gud 4y agoOkay, thanks for the information! Sounds like I would still prefer jails. Managing Docker always sounded complicated compared to managing jails. It is literally just a configuration file and a copy of userland on the file system. If you are a little clever, you can share the userland and additionally create templates which are really just some directories on your file system with additional stuff you want to put in.
- CoolCold 4y agoDocker is more on ease of use and distribution. Convince over all major parties (Windows, MacOS, Linux). Docker Compose for building interconnected services ( it even does dns resolution for you, so you can reach your services by short names not caring on IPs). Then it become natural for teams to share dockerfiles as way for sharing environment setups in all the same way. Using `docker run something` requires zero to none knowledge of the OS, Networks (nat included), packages. Everything will be auto downloaded. Compare to jails.
- Gud 4y agoOkay, interesting! I want to be in control of all those things(OS, Networks(nat included), packages). I roll my own packages using poudriere that I then distribute using FreeBSDs binary package management system... to my jails. XD That way I get a coherent well configured system everywhere.
- CoolCold 4y agoAnd hundreds of thousands of devs [nowdays we say developer, really meaning web related developer like Javascript] don't care. They want be in control of their API, but not boring sysadmins stuff. Jails are targeting sysadmins, thus Docker wins the adoption. Like cars with manual transmission. > But the manual transmission is dying out. Just 41 out of the 327 new car models sold in the United States in 2020, or 13%, are offered with a manual transmission, according to data from Edmunds. That is a tremendous drop from less than a decade ago. In 2011, 37% percent came with manuals.
- Gud 4y agoI don't think the analogy to manual transmission is correct - The way I have configured poudriere/pkg it's very rare I have to intervene, unlike with a manual transmission where the driver is directly involved in the control loop. But since I am in charge of the control loop, I can change it any time I please. Right now I am changing my poudriere configuration for the first time in years to build my packages using LibreSSL instead of OpenSSL. Sure, it requires some tinkering(not alot though) but that tinkering is completely optional on my part.
- vermaden 4y agoAs you require Docker/k8s there is not much that can be done here - just stick to Linux (or use them in a FreeBSD Bhyve VM but we know its better to just use Linux). Just like with your Photoshop (or Lightroom) example - if you need to run one - you use macOS or Windows for that - Linux also not possible here.
- Maursault 4y ago> K8s and Docker are purely Linux things. Correct, K8s and Docker will only work one single platform, namely Linux and Windows. No, wait, that's two. K8s and Docker can only possibly run on these two platforms: Linux, Windows and macOS. Ok, let me start over. The three platforms that support K8s and Docker are Linux, Windows, macOS and Oracle Solaris[1]. That's not... ok, the FOUR and ONLY four platforms that can run K8s and Docker are Linux, Windows, macOS, Illumos[2], Solaris, SmartOS, and FreeBSD.[3] How many did I say? K8s and Docker run anywhere someone is driven to make them run. [1] https://medium.com/@norlin.t/port-of-kubernetes-v1-24-0-for-illumos-and-solaris-98a8775ef04b https://medium.com/@norlin.t/port-of-kubernetes-v1-24-0-for-... [2] https://illumos.org/docs/about/features/ https://illumos.org/docs/about/features/ "LX-branded zones provide the Linux system call interface, allowing you to run most Linux application binaries without recompiling them for illumos. This facility is available in several illumos distributions, including SmartOS and OmniOS." [3] https://yom.iaelu.net/2020/05/freebsd-using-docker-and-kubernetes/ https://yom.iaelu.net/2020/05/freebsd-using-docker-and-kuber...
- LambdaComplex 4y agoLast I checked, running Docker on Windows and macOS involved running a Linux VM under the hood, and that Linux VM is what actually ran Docker.
- Maursault 4y ago"The Docker platform runs natively on Linux (on x86-64, ARM and many other CPU architectures) and on Windows (x86-64)."[1] macOS Docker performance leaves much to be desired, but this is moving goal posts and suggestive of infinite ignorance: nothing other than Docker on Linux is acceptable. But Docker is just software and it will work wherever, and it has its limitations and plenty of competition to do what it doesn't do or does poorly. Die on the Docker Linux hill if you wish, but, last I checked, platform agnostics are versatile, more marketable, and more valuable, while penguinistas have become all too common. "Give me Philips head screwdrivers or give me death! How can you still use flathead drivers? Or star bit drivers? LOL You're not even screwing seriously. Real men use Phillips." Same thing, really. When you need tools to work, you'll take care of them. But precious few, if any, actually worship them. [1] https://docs.docker.com/engine/faq/ https://docs.docker.com/engine/faq/