I recently upgraded Drifting Ruby's site from Ruby 2.6 to Ruby 2.7 as part of some general maintenance. The Beanstalk instance was using an older version of Amazon Linux. During the upgrade process, I discovered that it wasn't a simple transition. In this episode, we look at the discovery path and how to successfully deploy your Ruby on Rails application to AWS Elastic Beanstalk with Amazon Linux 2 and Ruby 2.7.
Back in Episode #106, we configured and deployed to a very simple AWS Beanstalk environment. However, in this episode, we take things a bit further and explore security groups, an existing database and redis service. Also, there are a few changes that we have to do in order to get Rails 6 working within Beanstalk.
Amazon's newest hosting service, App Runner, makes it fairly easy to deploy web services. In this episode, we take a look at some of the issues with App Runner as well as how we can deploy a Docker container image to the service. We also dive into building Docker images from an Apple M1 computer and pushing to Elastic Container Registry.
Heroku is a Platform as a Service (PaaS), where you can deploy and manage your Ruby on Rails applications. It is one of the easiest platforms to deploy to; allowing you to focus on the development side of things instead of worrying about managing an infrastructure.
I often create Rails projects and while some of these applications are fairly simple, deployment to a production environment still requires a lot of infrastructure setup. In this episode, we take a look at creating a Rails project template and being able to deploy it to a production environment within minutes.