Using Frappe Cloud for development

Hi Experts,

I have installed Frappe framework on a small digital ocean droplet, but was wondering if it is possible to develop using Frappe Cloud bench hosting?

I am able to SSH into the bench, but would need MariaDB passwords etc to be able to create new apps and sites. I searched the forums and couldn’t find any info - I tried the default MariaDB password “123” and “frappe” - but no luck.

Thanks in advance for your assistance.

Warren

Hi there,

Very interesting; I didn’t realize you could ssh into frappe cloud benches.

Assuming the benches are set up like standard deployments, the mariadb user/password should be in sites/SITE_NAME/site_config.json

Edited to add: there are other reasons you probably don’t want to use frappe cloud for development, including the fact that production servers use gunicorn for http routing, which used much more aggressive caching than you’d typically want in a development environment.

In short, no.

FC’s revenue currently comes from sites, so if you bypass the client side and start creating site from back-end, it defeats the whole purpose of the service. If you want new sites, create it from the dashboard. Add apps via dashboard as well. FC is not for development at least for now.

Thanks @peterg - I was hoping to start with a /frappe base and then add a site via “bench new-site xxx” command. Would make it much easier for colleagues to learn instead of going through the more complex “roll your own server”. My backup plan is just to distribute a working “droplet” - but was hoping to leverage the obvious best practice and ease of the Frappe cloud offering.

Thanks @rtdany10 - that makes sense, but I would have hoped “on boarding” interested developers with a simpler mechanism would “drive” business to Frappe Cloud for production installations.

I’d say give bare servers to the devs and ask them to install from the scratch. That really helps people get comfortable with Unix system and command line tools. They would also be able to debug issues better as they will better understand the whole architecture after installation.

@rtdany10 - agree that makes sense, but for Frappe to “compete” against the other low-code offerings some “quick start” options should be available for new devs to feel comfortable. I personally find the “batteries included” of Frappe a compelling offering, but to get my first environment going spent a number of hours to:

  • Manage performance of digital ocean droplet (set up a swap file)
  • Battled with Docker Desktop with my M1 Mac (intel vs arm)
  • Struggled a little with the MariaDB config file
  • Install supervisor (instead of TMUX) to get auto restart etc working.

It wasn’t obvious to me which installation instructions to follow - so had to capture what worked for me on Ubuntu 22.04 LTS etc.

1 Like

Well, there is an automated script to do all of these and it should work fine on Ubuntu 22.04 LTS(at least it did when I last tried).

And yes, it might throw couple of errors, mostly due to missing dependencies but if you analyze the error log well, it should be easy to solve.

1 Like

For development and testing, the official docker is by far the simplest solution I’ve found:

1 Like

You might also want to checkout GitHub Codespaces for a “quick start” dev environment: GitHub - vjFaLk/frappe_codespace: A repo to quickly create a Codespace with a Bench (didn’t try it myself yet)

1 Like

Thanks @rmeyer this works really well! Just tested it. Couple of initial learnings:

  • Recommend installing the Github Codespace extension (then you use your local VS code application)
  • The MariaDB password is the default one 123 - for creating new sites
  • Sites get served up on localhost in local browser with decent response times.
  • The bench version installed is 5.0.0-dev.

Thanks again for this suggestion.

2 Likes