We’ve finally retired the old MySQL-XtraBackup containers and moved on to MariaDB. Going forward, the “appliance” build script will be serving as the centerpiece for stand-alone servers and the various AWS Marketplace options we offer.
The appliance script is a one-stop shop to deploy our curated, best-effort OpenEMR instance to a fresh Ubuntu instance. One command configures Ubuntu, installs Docker, builds and deploys OpenEMR, and configures ongoing backups for it.
curl -Ls https://www.open-emr.org/install | sudo bash -s
This isn’t new on its own – we’ve had this since Ubuntu 16, and we’ve based our AWS Marketplace offerings on it for as long as we’ve been in their marketplace – but the MariaDB recovery agent released earlier this week (it has been a week, thanks) let us revisit and modernize a lot of the infrastructure that was written before Docker’s v2 compose was fully settled.
(The appliance documentation now at no point tells you to type a command involving backticks or cut. You’re welcome.)
The upcoming 7.0.4 release will be our first appliance release with MariaDB and this new framework, but it’s available for review right now, and I encourage you to steal any parts of it you’d find useful for your own deployments.
(And if you need something a little chunkier than a single server for your deployment, the devops repo has answers ranging from a multi-worker Kubernetes swarm through serverless Amazon Fargate deployments, with a Terraform-guided AWS EKS deployment at our top-end.)
Let me know if you have any questions!
PS: Now that the appliance backup protocols rely on MariaDB, and there’s an ARMv8 build of MariaDB suitable to our needs, this means that the Raspberry Pi should be able to run the whole stack, if you happened to need an EMR you could fit in an Altoids case.