Containerize dev, tst and prd

This post is part of The Containerization Chronicles, a series of posts about Containerization. In them, I write about my experiments and what I’ve learned on Containerization of applications. The contents of this post might make more sense if you read the previous posts in this series.

After cleaning up the Symfony demo project a bit, we are ready to do some containerization…

I will talk about:

  1. Logging
  2. Containerizing dev, tst, and prd
  3. Run and stop the containers
  4. Remove database from VCS
  5. Integrate with PHPStorm

If you want to jump right into the code, this is the tag on GitHub.

Continue reading “Containerize dev, tst and prd”

Advertisements

Cleaning up the demo project

This post is part of The Containerisation Chronicles, a series of posts about Containerization. In them, I write about my experiments and what I’ve learned on Containerization of applications. The contents of this post might make more sense if you read the previous posts in this series.

In order to start making experiments with containerization of applications, I am going to be using the Symfony demo project, which is a small blog where one can view and create some blog posts. Although it is a very small project, and therefore does not reflect the complexity of an enterprise cloud application, I feel it is flexible enough to experiment containerization practices, especially because I want to start small.

However, there are some things I don’t like about the project, so I start by doing some cleanup:

  1. Add roave/security-advisories
  2. Remove simple-phpunit, update to phpunit 7 and DAMA bundle 5
  3. Disable the profiler during test runs, so the tests run a bit faster
  4. Type hint all the things
  5. Change namespace from `App` to `Acme\App` to better comply with PSR-4
  6. Add a Makefile so we abstract our DevEx and automation from the tools

If you want to jump right into the code, this is the tag on GitHub.

Continue reading “Cleaning up the demo project”

The Containerization Chronicles

While working on the 18th post of The Software Architecture Chronicles, which is about implementing a proof of concept, I picked up the Symfony demo app and started refactoring away…

I started by cleaning up the project a bit and adding some functionality I like to have for better DevEx (development experience), but after some 20 commits I got annoyed with it and decided to try to get the environment as best as I could.

More or less at the same time, at work, we are currently moving to containers, and Kubernetes, and this would be a nice project to start diving into that.

So here it is, “The Containerization Chronicles”, a series of posts where I will be describing my experiments and learnings about the containers world.

I will be using the same repository as I will use for The Software Architecture Chronicles, so you will be able to access all the code there.

Posts in The Containerization Chronicles:

  1. The Containerization Chronicles
  2. Cleaning up the demo project
  3. Containerize dev, tst and prd
  4. Integrate with Scrutinizer CI
  5. Integrate with CodeCov
  6. Integrate with Heroku
  7. Add an Nginx container
  8. Replace the Nginx container for httpd
  9. Replace the httpd container for httpd+mod_php
  10. Make a benchmark on the previous 3 configurations
  11. Add a persistence container
  12. Start diving into Kubernetes… No idea what I’m gonna do here…