I’ve been keen to move some of my web services from CI to CD recently, and I was keen to see if it could be done using zero-downtime techniques. In other words, I wanted to run a minimum of two instances, to restart each one independently, and then to use a networking system to route […]
Setting up deploy keys is not something one does very often, and accordingly when one comes to do it, it’s something that needs to be looked up from piecemeal locations on the internet! Thus, as an aide memoire for me and anyone who wants it, here is what I do. Create a key pair. I […]
Introduction Over the last year or so I have taken a sabbatical from working on other people’s projects to work on my own, and while I have discussed them in other fora, it seems sensible for me to put them down here. As it happens, I have various people interested in my recent work anyway, […]
As documented in some of my past posts, I’ve been using Docker on CircleCI a lot recently, and I thought it was about time I investigated adding Docker layer caching to the mix. This is one of Docker’s best features, in my view: if a layer does not need building, because the command and the […]
Introduction Over the last six months, I’ve been working on a microservices-oriented application, and it has reached a level of complexity that means I could not do without the tests I have written. My tests are not perfect, and there’s times when I’ve plumped for slow functional tests when fast unit tests would have been […]
Introduction When I first started maintaining “play” servers on the internet, in order to run my own blog and various software projects, the build process was long and laborious. That would have been around 2009, and at that time I was working for corporate logistics provider whose Disaster Recovery time was measured in days, not […]
Introduction I’ve just made use of a Docker multi-stage build when Dockerising my WordPress blog, and I thought it would be useful to examine the benefits. Multi-stage builds are a nice way of being able to do build fragments in order to selectively copy pieces into the output build. Here’s a cut-down example: There are […]
Yes, the title is largely click-bait, but with good reason. I am presently using Code Fresh as my Docker registry, but I’m not really a fan of their service. I have therefore been spending a great deal of search-engine time on finding a replacement for my (unfunded) tech projects, to little avail. Free is of […]
I have some integration tests for a system that deploys PHP software to an Apache host via FTP(S) and SSH/SFTP transports. The tests run in a Docker image that has FTP and SSH servers installed, and they are stopped and started using shell scripts. This is a bit hacky, and it does not offer much […]
I see there is a ready-made [WordPress Docker image](https://store.docker.com/images/wordpress) available, and I’m sure it is very good. However, I like my version, since it pulls in the latest versions of the required plugins and themes, and deletes themes and plugins that are not in use. It’d be great to set up a simple JS app […]