DigitalOcean has a good series of articles Getting Started with FreeBSD on their servers.
Part 1, A Comparative Introduction to FreeBSD for Linux Users doesn’t do a bad job of explaining some of the main differences between FreeBSD and Linux. I think the following quote from the summary paragraph does sum a lot of what Linux users often fail to understand, and perhaps why they cling/return to one Linux distro - the need for a consistent OS philosophy:
Treating FreeBSD as its own operating system instead of insisting on viewing it through a Linux lens will help you avoid fighting with the OS and will generally result in a better experience.
Or as said from Comparing FreeBSD and Linux from the FreeBSD docs:
This arrangement differs from Linux in a number of ways:
No one person controls the content of the system. In practice, this difference is overrated, since the Principal Architect can require that code be backed out, and even in the Linux project several people are permitted to make changes.
On the other hand, there is a central repository, a single place where you can find the entire operating system sources, including all older versions.
BSD projects maintain the entire “Operating System”, not only the kernel. This distinction is only marginally useful: neither BSD nor Linux is useful without applications. The applications used under BSD are frequently the same as the applications used under Linux.
As a result of the formalized maintenance of a single SVN source tree, BSD development is clear, and it is possible to access any version of the system by release number or by date. SVN also allows incremental updates to the system: for example, the FreeBSD repository is updated about 100 times a day. Most of these changes are small.
This blog post should give you a good idea of the simplicity of Installing Phoenix, Elixir and PostgreSQL on FreeBSD
The FreeBSD Handbook is a great place to start and good reference to keep using as it’s kept up-to-date, although you’ll find more specific information about parts of FreeBSD and processes elsewhere from manpages to blogs, books, youtube vids, etc.
When stuck, The FreeBSD Forums and StackExchange’s serverfault are great places for quick answers.
If you want to easily browse or search through the thousands of packages and ports that FreeBSD has available for it, you can do so at FreshPorts or obviously within a FreeBSD install itself.
As an aside, I should also note that not only is much of the userland in OS X similar to FreeBSD’s, part of OS X’s kernel is from FreeBSD - Kernel Programming, BSD - as one of the co-founders of FreeBSD was at Apple from 2001 to 2013 (now at iXsystems who acquired PC-BSD in 2006, renaming it TrueOS, and in 2010 re-released FreeNAS rewritten using FreeBSD.)
Containers/jails certainly have their uses, but for working with Elixir and Phoenix Framework, especially in a production environment, my opinion would be to avoid them and focus on the OTP and how it natively scales, and look at use of containers/jails where security matters on the edge of your network, in firewalls, reverse proxies.