LmCast :: Stay tuned in

Getting phpBB 1.4.4 working in Docker

Recorded: Sept. 9, 2026, midnight

Original Summarized

Thranpages :: devlog :: phpBB 1.4.4 in Docker

Thran

pages
No. 60 Vol. 1Mon 07 September 2026Price: 0/0d

HOME //
WRIT //
THRANSOFT // WMW

phpBB 1.4.4 in Docker

devlog >> Mon 07 September 2026 by Thran

phpBB 1.4.4 was the last release of the ubiquitous message board script, before it got famous. It was designed for a world 21 years ago - PHP 3, Apache, register_globals and a high-trust online environment - passing user input directly to SQL was not frowned upon.
Let's say you want to go back to 2001 and experience the glorious days of the early forum-sphere. You can now do that!
The arcane scripture required a few patches to get working in PHP5 and MySQL 4, but not as many as you'd think:
Namely, some of the DB seeding commands were rejected by MySQL 4 (you don't need to say NOT NULL for auto increment!), the login cookie wasn't being set in functions.php (PHP5 actually had higher type safety than PHP3 and wouldn't coerce "" to 0), and the index page tried to parse empty strings trying to determine last post time when there were no posts. But with these fixed, and a few changes to php.ini that would make your heart stop (remember register_globals?), it works.

phpBB 1.4.4 board index in 2026!
Curiously, a lot of the features we love today are present:

You can choose from any of three themes.
You can give out ranks for regular posters.
BBcode and smilies are usable.
Moderation, IP inspections and bans.

What more do you need?
Detailed Guide: How To Get phpBB 1.4.4 running in Docker
First, the obvious: Don't use this in a public-facing server, you're asking for trouble.
You can jump straight back to 2001 with (almost) a single command:
curl -O https://raw.githubusercontent.com/lordfeck/phpBB-1.4.4-Docker/refs/heads/master/docker-compose.yml
docker compose pull
docker compose up -d

Then open:
http://localhost:8080/phpBB/install.php

Installer database settings
Use:

Database server: db
Database name: phpbb
Database username: phpbb
Database password: phpbb

The hostname is db, not localhost, because MySQL is running in the other Compose service.
After installation
phpBB 1.4.4 requires config.php to be writable during installation. The Dockerfile sets it to mode 666 for this reason.
After the installer has completed, lock it back down:
docker compose exec phpbb chmod 444 /www/phpBB/config.php

The original phpBB documentation also recommends removing or renaming the installer and upgrade scripts:
docker compose exec phpbb rm -f \
/www/phpBB/install.php \
/www/phpBB/upgrade_12.php \
/www/phpBB/upgrade_14.php

Reset everything
To throw away the database and start again:
docker compose down -v
docker compose up --build

Good luck & happy flaming!
phpBB 1.4.4 screenshots

Light mode in 2001.

Topic view.

Admin panel.

Want to give the Anonymous user admin rights? You can do that. This is truly "a forum that's free".
Source Repo & Docker Package

Repo: phpBB 1.4.4 patches for PHP5 and Docker
Pack: phpBB 1.4.4 Docker Package

Comments

Javascript needs to be activated to view comments.

Tags for this writ:
release, php, archaeology, containers,

Latest in devlog

phpBB 1.4.4 in Docker >> Mon 07 September 2026
Announcing Last.played >> Sun 02 February 2025
MacOS: Mail from 1993 >> Tue 25 June 2024
Rescamming: The story of haha.pl >> Sat 02 March 2024
Announcing No-WEI! >> Thu 17 August 2023

If that wasn't enough, see all in devlog (13 total).
Back to writ top.

 

About Thran NAQs Update Log

Copyright Information Crafted using Vim Valid HTML & CSS.


BTC: bc1qmdkn09q6u4h6mpd7qedpwj7j6lckzuun0mqqht

THRANPAGES v1.1

The phpBB version 1.4.4 represents a final release of the message board script preceding its widespread recognition, originally designed for an environment dating back to the early days of web forums and constraints prevalent around 2001, such as reliance on PHP 3, Apache, and the practice of passing user input directly to SQL. To function correctly in more modern environments like PHP5 and MySQL 4, specific patches were required to address compatibility issues, including adjustments to database seeding commands, handling login cookies within functions.php due to PHP5's improved type safety, and resolving issues where index pages attempted to parse empty strings. Despite its age, this version retained many features valued today, such as theme selection, user ranking systems, support for BBcode and smilies, moderation tools, IP inspections, and bans.

The document provides a detailed guide on running phpBB 1.4.4 using Docker containers, emphasizing that deployment should not occur on a publicly accessible server due to security risks. The process begins by utilizing the provided docker-compose file to initiate the setup, pulling the necessary images and starting the services. Following the initial setup, the installation procedure necessitates configuring the database settings within the installer script. For the MySQL service, the designated database server must be named db, with the database itself set to phpbb, and all corresponding credentials configured as phpbb for both the username and password; crucially, the hostname requested by phpBB should be db rather than localhost, reflecting the containerized network architecture.

After the installer completes its operation, a critical post-installation step involves adjusting file permissions within the container environment. Although the Dockerfile sets the configuration file /www/phpBB/config.php to mode 666 for write access during installation, this must be locked down subsequently. This is achieved by executing a command to set the permissions of the configuration file to 444 via docker compose exec phpbb chmod 444 /www/phpBB/config.php. Furthermore, the author recommends removing or renaming the installer and upgrade scripts, specifically /www/phpBB/install.php, /www/phpBB/upgrade_12.php, and /www/phpBB/upgrade_14.php, as recommended by the original phpBB documentation. To completely reset the environment and begin fresh, the user can execute docker compose down with the volume flag to remove existing data, followed by running docker compose up with the build flag to recreate the environment from scratch.