Recently here from bubble. Reading through the forum I see all kinds of options regarding servers, databases, and the like. Currently reading through the Docker 4-part series.
How do I determine the right combination of parts?
Hi Dave. Thanks for the resources. I’m hoping to receive some specific suggestions from a few Wapplers. It’s much more difficult to piece together a bunch of disparate conversations to arrive at a solution, but a few “I used this, this, and this, and it worked great” would be extremely helpful.
It’s a dynamic, data-intensive b2b app, also consisting of file storage, with a planned large user base. I don’t see why it wouldn’t be a fit for Wappler, I’m just seeking suggestions of the right combination of components.
Evolution strategy: start as web app, wrapped for use on iOS and Android, (hybrid?), offline capable, then at some point convert to native with web interface for functions not needed on mobile.
Docker is the easiest and best way for development, you can choose the kind of server and database and it is running locally in a sandbox. PHP and MySQL are currently a good choice. When you also have a hosting that supports docker containers then deployment is very easy. When using PHP and MySQL it is also not difficult to find any other hosting and deploy using ftp.
With Wappler you are free to choose your hosting or you can have your own server. We will be adding more hosting targets and database servers in the future and also support for node.js is planned.
In my opinion, and it’s only that, I think Docker is great, but may not be getting used properly here, except as a tool to help with initial development in Wappler. Containers are meant to abstract a multitier architecture into pieces (web, app, db) and allow for easier horizontal scaling.
For most purposes, I prefer to use Digital Ocean (AWS is too complex for starting off). They have a one-click install for LAMP. I then install Virtualmin (it’s fairly easy and I’ve thought about creating a tutorial, but haven’t got around to it). You could also create two/three different servers to setup Dev, Test, Prod environments. Migrations between environments is the toughest part to figure out, but using Git and something like gh-ost may help.
@sevenrice yeah, Webmin would work too. I’m just used to installing Virtualmin.
Here’s a basic description of each pulled from Serverfault
I generally install Webmin on every UNIX/Linux/Mac OS X server I manage, regardless of its purpose, and have done so for a decade or more. It is a general purpose administration tool, similar in purpose to your shell and text editor; it just happens to make it a little easier to get the configuration syntax right the first time and without having to consult the documentation as much.
Virtualmin is for web hosting servers. If you are hosting websites, then you probably want Virtualmin, as it provides a single point of management for all of the configuration files that go into having a “website” (Apache vhosts, DNS, mail, databases, log analysis, users, etc.).
Usermin is webmail, plus some other nifty features.
Virtualmin really has been great for me as well. I’ve had an instance running for years on Google Compute and just keep adding clients/sites with a few clicks. Custom scripts that build exactly was is needed including dev dns entries, ssl cert, etc. Makes managing via mobile easy too.
We actually use Plesk Onix for managing our web hosting. It is a great hosting panel allowing to create everything you need for websites, domains and mail. Very powerful and easy to use.