What is your setup for "develop on macOS, deploy on FreeBSD?"

Howdy, coming back to FreeBSD after a few years away as I still think it feels like the best Unix system around. I'm creating a web application and I'm experimenting with deploying onto FreeBSD instead of Debian. I prefer the stability and coherence of FreeBSD, even though Debian is sort of the easy solution.

I'm developing on macOS (I've run FreeBSD on a laptop quite a few times, but honestly a Macbook just makes day-to-day life easier) and would like to run my server environment locally for development purposes. If I deploy on Debian the usual answer is "use Docker/Podman/etc."

I know macOS is pretty popular with FreeBSD folks so I'm curious what setup you're using to emulate a FreeBSD server locally? Getting an image running on macOS is stupidly simple with the awesome videos FreeBSD is putting out and that handbook is great, but I'm curious about the end-to-end of giving a developer access to a database, web server, etc. locally that emulates a production deploy and includes your source code. I'm not necessarily looking for a total Docker replacement, just what you're doing for a reproducible local setup.

I'm not a virtualization guru so apologies if this is a silly question. :)
 
Web application: aren't they supposed to be OS agnostic?
HTML interface, backend does something, return HTML?
If so, does it really matter?

Or is the parts behind the HTML the important part?

I guess I don't understand the original question to be able to have valid input.
 
Deploying what things? Database involved? If yes, how does the database hold up in Docker?

I typically ssh directly into the target platform and develop there. Regardless of what my terminal is.
 
I'm not necessarily looking for a total Docker replacement, just what you're doing for a reproducible local setup.
I write notes (like FreeBSD 15.0 Xfce), and do the text editing from a web browser any-OS.

I self-host the wiki (notes) and can do that from any OS with nginx and PHP. I set nginx up bare-metal Windows/Linux/FreeBSD and my configs are mostly the same; it's a LEMP stack with the L changing to W or F I guess :p (I use MariaDB for other sites)

For FreeBSD I did: nginx -> PHP-FPM -> Certbot -> (website). Basically a pkg install freenginx-devel php85 git-lite php85-mbstring and some config; Linux is similar, but Windows I download zips from upstream instead of a package manager (all manual/no convenience like XAMPP or Docker). Same PHP extensions though every OS and similar nginx.conf and PHP settings; I have my wiki up and a secure webserver that can process PHP in about an hour of clean-installing a OS!

MariaDB DBs get flat-dumped to a plain .sql file, and restored as-is easy (no problem cross-OS).
 
Back
Top