Operations | Monitoring | ITSM | DevOps | Cloud

April 2023

CTO Fundamentals II - 3:4 CTO Legacy Webinar Recording

Corneliu Fatulescu has more than 23 years of experience in SaaS, two-sided markets, user-generated content, and media products. Currently, he's leading a team of 60 engineers working on defining the technology strategy and vision at the group level. Have you ever assumed another CTO's legacy? Did you say, "Wow! I love it. We have a solid foundation. We need to keep going, and everything will be alright"? Or was it more like, "this is a sinking mess"?

CTO Fundamentals II - 2:4 CTO Decision-Making Webinar Recording

Corneliu Fatulescu has more than 23 years of experience in SaaS, two-sided markets, user-generated content, and media products. Currently, he's leading a team of 60 engineers working on defining the technology strategy and vision at the group level. The majority of CTOs acknowledge that they rarely select from the best set of available options when making judgments. No one would select from these choices if they were taken out of context.

Using Custom Templates in Bunnyshell

Dive into the world of custom templates in Bunnyshell with this comprehensive tutorial. Follow along as we demonstrate the step-by-step process of creating a custom template using a simple machine learning application. Learn how to configure environment settings, handle repositories, deploy environments, and manage template versions. By the end of this tutorial, you'll be well-equipped to leverage custom templates in Bunnyshell to efficiently manage your projects across different stages of development.

Node.js Example - Deploy an Environment

In this video, learn how to create and deploy a Node.js environment in Bunnyshell. The example application consists of a React frontend, an Express backend, and a Postgres database. Follow the step-by-step guide on leveraging a Docker Compose file to set up the environment, customizing settings, and deploying the environment to a Kubernetes cluster. Once the environment is deployed, discover how to add and edit books in the demo application.

Node.js Example - Remote Development

This video demonstrates how to perform remote development on a Node.js environment by synchronizing files between the local machine and the remote environment. Using the demo books application, learn how to initiate remote development and sync local files with the remote backend component. This process involves starting an SSH server in the container, manually restarting the application, and making changes to the application that automatically trigger a restart upon saving.

Node.js Example - Remote Debugging with Your Local IDE

In this video, learn how to debug a remote development session in Node.js using the previously deployed demo books application. Follow the steps to set up port forwarding and configure the IDE to map local folders to remote folders in the container. By starting the process in development mode with the inspect flag, discover how to enable the IDE to connect to the running process in the container. The demo includes setting breakpoints and stepping through code during debugging.

Components Deep Dive: Docker-Compose in Bunnyshell

Discover how to easily create an environment in Bunnyshell using your docker-compose.yaml file. This developer-focused video walks you through the process of importing your services and configuring your components using 100% Docker-compose syntax. Learn how to expose public hosts, attach volumes, and set up build arguments. We'll wrap up with a demonstration of how to deploy your environment in just a few minutes.

Components Deep Dive: Helm & Kubernetes in Bunnyshell

Learn how to deploy an environment in Bunnyshell using Helm charts and Kubernetes manifests. This developer-centric video breaks down the process of configuring components such as the frontend, backend, and databases. Dive into the details of using Helm components, running user-defined scripts, creating values files, and leveraging Helm's templating system. We also explore how to use Kubernetes manifests and perform replacements within your application.

Components Deep Dive: Generic Components in Bunnyshell

Discover how to work with generic components in Bunnyshell, a powerful tool for developers. This video provides a practical example of integrating a serverless database, Neon, into an environment. Learn about the configuration of generic components, how they run on images, and their use of deploy and destroy scripts. We also explore how to use exported variables within the same component or other components, and how to organize and manage scripts.

Automating Preview Environments in Bunnyshell

Learn how to set up and automate preview environments in Bunnyshell to improve code reviews, gather feedback, and facilitate QA testing. This video demonstrates how to enable automatic preview environment creation, configure settings for deployment and destruction, and manage pull requests See how to create a new environment, modify the source environment, and view the changes made in the application. This video also covers the automatic deletion of environments after a pull request has been closed or merged.

Troubleshooting with Bunnyshell

This video demonstrates how to troubleshoot various issues using Bunnyshell, including failed builds, broken backend, and issues caused by generic components. Learn how to access pipeline logs, container outputs, and Kubernetes resources for debugging, as well as how to perform SSH into containers and port forward for databases. By utilizing these techniques, you can efficiently identify and resolve problems without needing direct access to the Kubernetes cluster or infrastructure.

Create Environments from a Template in Bunnyshell

In this tutorial, learn how to create environments in Bunnyshell using custom templates. Templates help to streamline the process of setting up environments, making it faster and more reliable. The video demonstrates how to create environments for development and staging from custom templates and provides an overview of how to deploy them. By using templates, you can ensure consistency and predictability across your projects.