London, United Kingdom

(+44) 07788.377.460 [email protected]

How To

How to fix MySQL error in WordPress

WordPress Error: Duplicate entry ‘0’ for key ‘wp_postmeta.PRIMARY’

I got this error when I changed the hosting of one of my WordPress websites: And I assume something’s got overlapped during the migration where the AUTO_INCREMENT values are wrongly registered by WordPress engine. To fix this, just by reading the error message, I needed to update the AUTO_INCREMENT on […]

A successful directory structure

Don’t just dump it all in the root! If software development is your job, then just don’t be that guy! Consider a project like the one described in my Advanced WordPress and Docker or FastAPI on Docker posts. I prefer to organise my code into directories for the application code […]

Python API with FastAPI on Docker

Python API on Docker with FastAPI

This article demonstrates how to run aPython API on Docker, with the FastAPI framework. We’ll be taking advantage of the built-in OpenAPI documentation feature. Considerations The code presented here runs on Python v3.11 and will set up a virtual environment to cache its requirements, rather than installing them globally (on […]

WordPress on Docker with ssl on nginx

Advanced WordPress on Docker with SSL on Nginx

This article essentially picks up on the WordPress on Docker (with nginx-mysql) post. It demonstrates how to host a WordPress website on Docker, with Nginx as the webserver (and SSL from LetsEncrypt), and a MySQL database. We’ll address a known issue with file permissions with WordPress files created or edited […]

WordPress via nginx on Docker

Run WordPress on Docker (with nginx)

Synopsis This article describes how to configure and deploy a WordPress instance, either in production or for local development (and assumes a beginner+ / enthusiast+ level in DevOps).To achieve this, other than the official WordPress codebase, we will also need a database and a web server which we’ll refer to […]

Deploy Laravel with Apache on Ubuntu

Tasks: Ubuntu 14.04 (or greater) OpenSSL, OpenSSH, Git SendMail, cURL, Perl Apache 2 PHP 7.0 (7.2) MySQL Webmin Composer Laravel Framework Prerequisites Note: It’s assumed the VM already has Ubuntu installed at this stage. See online documentation on how to spin up a virtual machine and for installing Ubuntu 14 […]

Deploy WordPress on CentOS (tutorial)

# install tools: sudo yum install centos-release-scl.noarch nano bash-completion net-tools wget curl lsof # install dependencies: sudo yum install git openssh-clients gettext-devel openssl openssl-devel zlib-devel curl sendmail python perl-CPAN perl-devel perl perl-Net-SSLeay openssl perl-IO-Tty perl-Encode-Detect # install apache: sudo yum install httpd sudo systemctl enable httpd.service sudo systemctl start httpd.service […]

Configure MySQL Replication (draft)

setting up MySQL replication  

Restore MySQL Replication

an introduction is needed before diving into the procedures… First you need to stop Apache service on web server, or any other measure to prevent other environments from writing to your DBs: :~$ sudo service apache2 stop flush / reset queries & flush tables with read lock and disable keys […]