Developing an easily editable blog with Kirby 3 on Amazon Elastic Beanstalk?


#1

We’re working on a site with several pages, one of which has to be a blog, and we’re wondering what’s the best approach to this.

Goals:

  1. It should be possible to create/update an article ASAP without involving the developers.
  2. It should run on Amazon Elastic Beanstalk since we already use it and we need all of its features.
  3. The developers should be able to easily merge the site content locally so they can work on the site.

Since Kirby is file based, we can’t easily download any changed files on the live Amazon EB instance. I also don’t know if those changed files play well with the Amazon CDN. That’s why at the moment, our content folder is in a separate repo and we have a staging server with Kirby AutoGit installed. Editors change content on staging, we pull it, merge it, and create an Amazon EB deploy with the new content. This whole process takes too long for goal #1.

Do you have any ideas how we could make that work?

We’re thinking of using Kirby 3’s new database functionality for the blog and managing the rest of the content as we currently do. We have an idea of how to edit the site so that it uses a database, but we have issues figuring out all the rest - how we should configure it with Amazon, how we would push/pull changes, how we could roll back EB deploys and sync the database…

Thank You!


#2

I am not sure if you should ask some AWS experts instead. Honestly 99% of people are using kirby on regular VPSes / EC2 instances or even shared hostings where you have easy access to filesystem.

I am not familiar with Beanstalk but if it is just orchestration above AWS services then you can spin up EC2 with nginx and php and put it there no? I think beauty of kirby for most people is that your filesystem basically becomes nosql db. On the other hand this becomes problem with service models where deployments are immutable and separated from db/content - for example when people try to put kirby on lambda or zeit now.

I mean it is surely possible with the sheer amount of possibilities AWS offers like maybe they have some kind of block storage that allows your systems to share filesystem. But if you are going to go full kirby db i think you will have to write lot of added code as glue.


#3

I think I would look into Webhooks or deployment services. Surely there is a way to have a service listen to changes in a content repo and trigger a merge/deployment.