Elastic Beanstalk no longer recommended

The Running Metabase on AWS Elastic Beanstalk page says:

Due to problems with the platform, we no longer recommend using Elastic Beanstalk to run Metabase in production.

I was wondering if it's documented anywhere what the nature of these problems is, specifically if there are security considerations involved. Thanks!

We are also interested in more and detailed information. Thanks!

The issue is simple: we received TONS of tickets and issues here in the forums of people that used Beanstalk and didn't know how it worked. E.g:

  • people that tried to upgrade, the upgrade didn't work and then wanted us to debug why but they couldn't send the logs
  • people that wanted to change parameters of their beanstalk instances and didn't know how to do it, since Beanstalk is configurable via a bundle
  • people that needed to get inside their instances to migrate to the cloud, but didn't know how

In the meantime, Amazon changed a lot of things in the Beanstalk documentation, and our docs stayed behind.

We decided to stop recommending beanstalk for our own mental sanity


What about users who have been using Beanstalk without issue? Are you going to at least ensure you continue to support it (even if you don't recommend it?) - removing it without any notice or time to migrate is pretty poor form - I tried to access the 0.47.3 file to update (https://downloads.metabase.com/v0.47.3/metabase-aws-eb.zip) and get a 404 error

1 Like

we will do our best, but don´t expect wonders here.

Remember that you can easily update your Beanstalk just by opening the zip file, modifying the image of the dockerrun.json and uploading that zip again

1 Like

A note to Mac users (and my future self): if you follow Luiggi's advice by expanding the zip file, modifying the image version in Dockerrun.aws.json, then compressing the folder, MacOS will add a bunch of crap to your archive, and EB will fail to deploy it. Instead, use zip from the command line to add only the files you need (Dockerrun.aws.json and the .ebextensions and .platform directories). Here's the v0.47.3 archive that worked for me: Dropbox - metabase-aws-eb-v0.47.3.zip - Simplify your life


Hmmm, I updated the file, re-zipped and uploaded to beanstalk and deployed the new version, which all updated ok, but in the admin screen it's still saying 0.47.2 with an update available

Hi Mike, maybe download the file I linked to above, and try again?

Yeah I can, I mean it's just weird - it's not a complicated change. I downloaded yours and that seems to have worked, so I must have done something stupid, somehow. Oh well, let's see how we go on the next update - Thanks!

beanstalk tried to update and it reverted back... these is the type of things that we faced every single day with beanstalk users and that's the reason why we can't recommend it anymore

Sure, I totally get that it's a pain in the ass and annoying - by all means don't recommend it anymore... But you can't just stop supporting it without notice and leave everyone who's using it to "figure it out" - honestly it REALLY makes me question how metabase as a commercial entity operates; I'm second guessing whether I'd ever take up the metabase cloud option in the future at all or go somewhere else entirely

I think Metabase as a commercial entity is making the (IMHO wise) choice to shift their limited resources to their paying customers. I've been working with them to migrate my elastic beanstalk deployment to their cloud, and they've been nothing but super helpful. The whole reason they're in this mess is that Elastic Beanstalk (who gets paid) support is NOT helpful, and so it falls to Metabase (who does not get paid), and that's no way to run a business. That said, it would be nice if they continued to produce the EB builds for at least a little while so that people who are doing just fine there have some runway.

Here's version 0.47.4 (works for me) Dropbox - metabase-aws-eb-v0.47.4.zip - Simplify your life

We had to pull the artifacts from the page, as if they remain there, more people will deploy Metabase on beanstalk which we don’t want.

Users who know how beanstalk work will know how to upgrade, we’re forcing the ones who don’t to move away from that to a service they can use and maintain

Thats a fairly big assumption. As I said, removing all support with zero notice is extremely bad practice. I'm sure there is a very easy way to avoiding having NEW customers using beanstalk while still supporting existing customers.

@mikemortimer if you're a paid customer of Metabase, please contact support, we will continue supporting the beanstalk deployments of our customers and we will also help in case they decide to move away from that model. Thanks

bummer to see microsoft azure as the only full stack option for running metabase open source now. it'd be nice to include a tutorial on AWS App Runner it appears it'd be easy to set it up using public.ecr.aws/dolarapp/dockerhub/metabase/metabase:latest, environment variable configuration, and networking config to talk to RDS. although beanstalk doesn't seem to be going anywhere so the configs you had were fine too AWS Elastic Beanstalk release notes - AWS Elastic Beanstalk except the instance type and Xmx weren't up to your current recommendations so i fixed that in this fork of the beanstalk instructions for posterity boilerplate for including plugins in elastic beanstalk by ericcj · Pull Request #26318 · metabase/metabase · GitHub

we will try to do our best to facilitate deploying Metabase on more standardized stacks, something like what databricks does with their product (it's a transparent cloudformation script), but it's still not decided.

What we need to come up with is something that's simple, that anyone can use, and also it's not obscure with tons of components that can blow up in your face like Beanstalk is

I tried migrating from 0.47.10 to 0.48.3 yesterday and it killed the environment and wouldn't start up. Anyone else had any luck migrating beyond 0.47.10 on EB? I had to downgrade back to it....

Have you managed to upgrade to 0.48.3 at all?