Recently Matt Glaman, who previously talked with us about test-driven development and DDEV, launched a Drupal 9 site in his first experience with DDEV-Live live on YouTube. It was a bit emotional to watch the livestream (“Yes, you’ve got it! Just add the php-version flag!” I hollered at my monitor), but Matt was well equipped with the documentation, and deep Drupal and DDEV experience.
Many early adopters have contributed to the growth of DDEV-Live as it becomes a leading-edge self-service hosting platform. DDEV-Live solves the challenge of managing your own Kubernetes cluster by offering our Kubernetes-based hosting platform and tools to launch a site onto scalable container architecture whenever you want, giving you the freedom to grow and advance on your own terms. Please read about Matt’s full experience on his blog:
Building your own Kubernetes cluster?
Of all the different ways to handle container orchestration, Kubernetes has come out on top. Managing your own Kubernetes cluster is a fun (no really!) challenge, a massive learning curve, and a lot to maintain. If you want to leverage Kubernetes for production web hosting you may want a little help and management, maybe even split the costs of AWS or GCP with some other folks.
That’s the goal of DDEV-Live: we want to give you all the cool stuff without the hassle of maintaining the cluster on top of maintaining your projects. Sometimes you just want someone else to do the cooking.
“It’s awesome that DDEV-Live is built on top of, and is helping to expand an open source hosting solution such as Kubernetes,” as Matt said in the livestream.
DDEV-Live managed Kubernetes hosting
Using the DDEV-Live CLI and a fresh account, spin up your own site quickly from your Git repo of choice. The details are in Matt’s DDEV livestream blog. Here are a few highlights that stood out to us from Matt’s experience:
Once you’ve signed up and installed the CLI, you’ll run
ddev-live auth to connect the CLI to your account on the platform. This is a great time to set your default organization. Matt said “The OAuth handshake with the command line tool is really seamless. Props to DDEV for doing that here.”
Some hosting providers, as Matt noted, don’t allow you to run a build process in production, you have to commit your artifacts and vendor directory (not recommended by the Composer documentation) or use an intermediate CI build process. With DDEV, you can add a flag
--run-composer-install on the platform when you create your site or later with
ddev-live config and include additional Composer arguments.
For deployments, subsequent pushes to the Git repo/branch you created your DDEV site from result in automatic deployments to production. We’re continuing to build out some support around this, such as reporting on status and more documentation regarding what tools run each time and so forth.
“You should always have scheduled backups going on your site. Not all hosting providers make this easy.” Database backups can be created, configured, pushed, pulled, etc in DDEV-Live. It is important to remember that a backup must be created before it can be referred to in a pull, for instance. You can find details on any command by appending
--help to learn more.
Matt also checked out the DDEV-Local integration for DDEV-Live. This allows you to easily pull down a site from Live to Local and sets up a connection for future work. It works in the same way as the DDEV-Local integration for Pantheon except DDEV uses your Git provider as the source of truth for code. This integration and the automatic deployments to production are just some of the GitOps principles DDEV leverages to bring you a reliable, flexible deployment workflow.
Open source principles
DDEV is adapting and updating all the time; we’re constantly observing how the platform is used and where we can smooth out wrinkles and improve it for everyone. Thanks to Matt sharing his experience with everyone, we were able to queue up and tackle a series of changes to the platform and documentation. Many of these updates are in the most recent release of the CLI, ddev-live version v0.6.0. Run
ddev-live --version to see your current version, and upgrade via Homebrew or download the binary.
We had a lively internal conversation about the logic behind flags for enabling/disabling cron, made appropriate changes, and are currently finessing some validation for cron jobs in the backend. There were underlying issues in the
ddev exec command which surfaced during the livestream and were remedied with RBAC changes for a controller as well as informing ongoing work for the DDEV API. The livestream walkthrough also prompted us to finalize how we offer setting the PHP version from the CLI in terms of commands and defaults.
Up next, we’ll be adding more guidance to the CLI and UI onboarding workflow to make the process of signing up and getting started much smoother, especially changing the concept away from the “organization.” This has folded into some other conversations about terminology, where we often internally reference terms from Kubernetes, but on the customer side that’s been abstracted back to terms that should be more broadly familiar. As Matt said:
“Overall I’m pretty excited. I love the fact that it’s a wrapper around Kubernetes, so you get all that awesomesauce.”
We also very much appreciated Matt saying, “When you’re working with a product and the company is open to feedback and has ways to give it easily, do it. That helps build a better product and shows their values— that they’re willing to listen to the customer and adopt some of the changes. Always recommend reaching out to the company, especially DDEV, they’re always really good on feedback.”
Please, when you are using DDEV, do send in feedback, suggestions, comments, anything at all. We’re here to enable you to succeed, and your comments will lead to changes that benefit all users. Matt also thought to open an issue for a stumbling point in DDEV-Local, and made a point of searching to see if an issue existed already. Open source folks everywhere thank you for that.
Watch and learn
Thank you again to Matt for sharing his first walk through with DDEV-Live! We hope his blog and video help you launch your sites onto our hosting platform as well. Everything you need is in the documentation so you can get started and deploy whenever you’re ready. Thanks for tuning in!