WordPress on Google Container-Optimized OS

Over the years, we have learned that many hosting companies are slow and unpredictable. Economic pressures often lead them to share resources, even though these resources are in high demand by widely used WordPress-hosted sites.

As a result, one excellent option for a WordPress hosting platform is a Container-Optimized OS, such as AWS’s Botllerocket (for a comparison, see here). Configuring it as a 4vCPU/16GB instance will provide a solid starting point. What does this offer? Essentially, you’ll have a command prompt without apt-get or similar functionalities. The system is designed specifically for running Docker containers.

In our setup, we have four containers running. We use the traditional MariaDB by Bitnami and the traditional WordPress by Bitnami. Additionally, you can choose any FTP service you prefer, and we also provide a standard Linux container where you can run any software of your choice.

MariaDB
docker run --log-opt max-size=100m --log-opt max-file=5 -d --name XXX -e MARIADB_ROOT_PASSWORD= -e MARIADB_EXTRA_FLAGS='--max_connections=155 --innodb_buffer_pool_size=2G' --env MARIADB_USER= --env MARIADB_PASSWORD= --env MARIADB_DATABASE= --network YYY --volume /home/admin/ZZZ:/bitnami/mariadb --restart always bitnami/mariadb:latest

Please set the XXX, YYY, ZZZ, and the credentials MARIADB_ROOT_PASSWORD, MARIADB_USER, MARIADB_PASSWORD, and MARIADB_DATABASE accordingly.

WORDPRESS
docker run -d --name NNN -p 8080:8080 --log-driver none --env ALLOW_EMPTY_PASSWORD=yes --env WORDPRESS_DATABASE_USER= --env WORDPRESS_DATABASE_PASSWORD= --env WORDPRESS_DATABASE_NAME= --network YYY --volume /home/admin/BBB:/bitnami/wordpress --cpus="0.75" --restart always bitnami/wordpress:latest

Please use the YYY, set the NNN, BBB, and the credentials WORDPRESS_DATABASE_USER, WORDPRESS_DATABASE_PASSWORD, WORDPRESS_DATABASE_NAME accordingly.

FTP
docker run --rm --name ftp -i -v /home/admin/BBB:/home/virtual/user/html -e "PASV_ADDRESS=III" -e VSFTPD_USER_1=USER:PASS:1001:" -p "21:21" -p "30000-30009:30000-30009" -t wildscamp/vsftpd

Please set the III (your fixed IP), and the ftp credentials: USER and PASS.