Hello,
I have been using FreeBSD for my home-box server for years now; I started with FreeBSD 9.x, something like this .
I have always been very satisfied with the ecosystem, the community, the overall quality of the distribution, and its design.
I like the jails, I like packet filtering, I like the robustness of the design and the product. I'm really a FreeBSD enthousiast !
In fact, I have always tried to evangelize and promote it in various ways on forums and my blog.
Except that for the past few months, I have been facing a problem when I want to deploy new software that I find on GitHub...
Most of the time, they are intended to be installed with a “dockerfile”... and that's it !
In the best case scenario, there is documentation for building for dev peoples with npm/cargo... but most of the time, manual compilation are painfull and fails because a library does not recognize FreeBSD...
Some softwares are very easy to build (often those created with Golang or Rust), but as soon as there is a little javascript npm frontend or backend , it quickly becomes very complicated. Especially for modern webapp.
It becomes really, really frustrating to find a new software that I like and would like to test, but that I know I'm going to have to struggle with, try to translate the docker file, commit to the repo, and fight to justify why this or that library doesn't compile with FreeBSD... I don't have the energy or time for that anymore...
So I know that FreeBSD isn't the problem; the problem is that developers think that dockerfile is the new standard for deploying applications especially for javascript apps !
But reality is what it is.
I tried playing around with Podman, but it's really not production-ready, and you have to do a lot of tinkering to get software other than a "simple Python image" to work.
One solution might be to boot a VM with Bhyve based on Alpine and run Docker in that VM
But that would require me to use multiple technologies, review my backup policy, run tests, and so on. And my ressources on my main box are limitated (N100 + 16G or Ram)
This will takes me further away from what I'm trying to do: have a simple, consistent system consisting exclusively of jails easy to manage and restore.
This is why I'm considering to migrate my small n100 box to Rocky or Debian with docker only ....
I have been using FreeBSD for my home-box server for years now; I started with FreeBSD 9.x, something like this .
I have always been very satisfied with the ecosystem, the community, the overall quality of the distribution, and its design.
I like the jails, I like packet filtering, I like the robustness of the design and the product. I'm really a FreeBSD enthousiast !
In fact, I have always tried to evangelize and promote it in various ways on forums and my blog.
Except that for the past few months, I have been facing a problem when I want to deploy new software that I find on GitHub...
Most of the time, they are intended to be installed with a “dockerfile”... and that's it !
In the best case scenario, there is documentation for building for dev peoples with npm/cargo... but most of the time, manual compilation are painfull and fails because a library does not recognize FreeBSD...
Some softwares are very easy to build (often those created with Golang or Rust), but as soon as there is a little javascript npm frontend or backend , it quickly becomes very complicated. Especially for modern webapp.
It becomes really, really frustrating to find a new software that I like and would like to test, but that I know I'm going to have to struggle with, try to translate the docker file, commit to the repo, and fight to justify why this or that library doesn't compile with FreeBSD... I don't have the energy or time for that anymore...
So I know that FreeBSD isn't the problem; the problem is that developers think that dockerfile is the new standard for deploying applications especially for javascript apps !
But reality is what it is.
I tried playing around with Podman, but it's really not production-ready, and you have to do a lot of tinkering to get software other than a "simple Python image" to work.
One solution might be to boot a VM with Bhyve based on Alpine and run Docker in that VM
But that would require me to use multiple technologies, review my backup policy, run tests, and so on. And my ressources on my main box are limitated (N100 + 16G or Ram)
This will takes me further away from what I'm trying to do: have a simple, consistent system consisting exclusively of jails easy to manage and restore.
This is why I'm considering to migrate my small n100 box to Rocky or Debian with docker only ....