Docker Debugging Docker image sizes - how to inspect them with dive Have you ever wondered why your docker images are so large, and what can be done to drill down into the layers one by one. Well, you can.
Drupal Drupal and the Open Web in the Australian Government - 2024 edition Have you ever wondered how popular Drupal is in your local state and at the Australian Federal Government level? 2024 edition.
Git Finding and deleting large files in a git repository Large files can slow down cloning and fetching operations, and make your developers less efficient. Use this guide to find and delete those files
Fastly Listing Fastly users that can access a particular service I was recently to supply a list of non-superuser user accounts that could access a given Service ID in Fastly, and what their role and permission was. This can be achieved with the Fastly CLI and command line utilities like jq.
Drupal Drupal and the Open Web in the Australian Government - 2022 edition Have you ever wondered how popular Drupal is in your local state and at the Australian Federal Government level?
AWS Choosing the right Amazon EC2 Spot Instances for your workloads The main issue was narrowing down the enormous list of instance types so they would be suitable to run our workloads.
Fastly Bulk import ACL entries into a Fastly ACL How to automate adding large amounts of ACL entries to a Fastly ACL
Docker Dockerfile best practices - stories from the field This is a collection of things I have come across using Docker over the years and working with docker in kubernetes across thousands of projects.
Fastly Fastly Soft Purge vs Instant Purge - what is the difference? What Fastly Soft Purge is, when it is useful, and how to use it.
Fastly Fastly Logging to Amazon S3 in JSON format One of the cheapest and easiest methods for logging in Fastly is to use Amazon S3. This post will examine how to set this logging up, some of the common gotchas I came across after running this in production for a while now.
Ghost Hosting Ghost in Kubernetes Ghost is traditional meant to be installed on a single VM. This article will explore how to get Ghost running inside Kubernetes.
Fastly Purge a single domain and it's content from a Fastly service with multiple domains One of the current limitations of Fastly is that you cannot purge a single domain from a service, without dropping the entire cache. This post will explore a solution to this.
Drupal How many JOINs is too many? Tuning optimizer_search_depth for MySQL with Drupal Drupal is extremely flexible, and creates a highly normalised table structure, 2 tables per field on a piece of content. We were seeing SQL queries appear to never complete when they had lots of JOINs in them.
Drupal Finding and killing anonymous sessions in Drupal Sessions in Drupal are created when you log into Drupal. You can however start a session without first authenticating. This is known as an anonymous session
Caching CORS, Cache poisoning and the Vary HTTP header Understanding the Vary header is key ensuring CORS will work with CDNs and caching.
Kibana How to create scripted fields in Kibana using Painless What is a scripted field in Kibana?Kibana is really good at searching and visualising data held in ElasticSearch indexes. When you need to go outside of what is in that index however - this is where scripted fields come into play. Some great use cases for scripted fields (in
MySQL Finding and killing long running SQL queries in AWS RDS Occasionally we find sites that are running extremely slowly, and digging down we end up finding MySQL queries that have been running, for sometimes days or even weeks.
SSL Debugging TLS certificates with Certigo OpenSSL only goes so far, learn about Certigo, to which goes a lot further.
Performance Preparing for a high traffic event, simple steps to success The steps that any new launch or high traffic event should go through in order to have the best chance of success.
Drupal Search API attachments and storing reasonable amounts of data Search API Attachments has a setting that allows you to store only the most important information in the database.
Drupal How to add sub tabs under the User profile in Drupal 8 A simple step by step tutorial on adding a custom sub tab in a user's profile in Drupal 8.
Drupal How the feeds module in Drupal 7 ended up causing MySQL to sever the connection This is a short story on an interesting problem we were having with the Feeds module and Feeds directory fetcher module in Drupal 7.
Drupal PHP 7.3 and when you can upgrade your Drupal site PHP 7.3.0 was released in December 2018, and brings with it a number of improvements in both performance and the language. As always with Drupal you need to strike a balance between adopting these new improvements early and running into issues
Cloudflare Analyzing Cloudflare Logs (formally ELS) with the command line If you have an enterprise zone with Cloudflare, there is the ability to request the raw request logs using 'Cloudflare Logs' (formally called Enterprise Log Share or ELS for short).