Skip to content
Menu
Marius Serbanica – Tech Blog
  • My Tech Blog
  • About me
  • Contact Me
  • Curriculum Vitae
  • Projects
  • Current Projects List
  • Certifications
  • Home Lab
  • Self-Hosted
  • Linux Cheat Sheet
  • Linux Commands
  • Privacy Policy
  • Site Map
Marius Serbanica – Tech Blog
June 1, 2025

PHP-Fusion 7 CMS fully dockerized!

This idea came to me after I was trying to recover a deprecated database that I had for a very old website based on php-fusion’s CMS. Sure, these days they do have a new version but, the new version would not work with my old database. So I thought, why not DOCKER? 🙂

Using Docker for PHP-Fusion 7 is actually a great idea—it isolates legacy software (like PHP 5.6 and MySQL 5.6) from the host system and makes upgrades or changes easier down the line.

1. Create a Project Directory:

Firstly you’d need a server or in my case, I created a VM on my home lab.

mkdir ~/phpfusion7
cd ~/phpfusion7
Nix

2. Prepare Folder Structure

mkdir fusion
mkdir db_data
Nix

fusion/ will contain your PHP-Fusion source code.

db_data/ will hold your MySQL data persistently.

3. Create docker-compose.yml

In ~/phpfusion7, create a docker-compose.yml file:

version: '3.7'

services:
  web:
    image: webdevops/php-apache:5.6
    container_name: fusion_web
    ports:
      - "8080:80"
    volumes:
      - ./fusion:/app
    depends_on:
      - db

  db:
    image: mysql:5.6
    container_name: fusion_db
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: rootpass
      MYSQL_DATABASE: fusion7
      MYSQL_USER: fusionuser
      MYSQL_PASSWORD: fusionpass
    volumes:
      - ./db_data:/var/lib/mysql
YAML

You can change the passwords to something more secure.

4. Download PHP-Fusion 7
Go to PHP-Fusion SourceForge and download PHP-Fusion 7 (e.g., v7.02.07).
Upload and extract the contents of the zip/tar.gz into the fusion/ directory.

# example:
cd ~/phpfusion7/fusion
wget https://downloads.sourceforge.net/project/php-fusion/PHP-Fusion%20Archives/7.x/7.02.07/PHP-Fusion_7-02-07.zip
unzip PHP-Fusion_7-02-07.zip
rm PHP-Fusion_7-02-07.zip
Bash

Make sure all files are directly inside fusion/ (not in a subfolder).

5. Start the Containers

cd ~/phpfusion7
docker-compose up -d
Bash

This starts both the PHP-Apache container and the MySQL 5.6 container.

Apache will serve PHP-Fusion on http://<server-ip>:8080.

6. Run the Installer

In your browser, open: http://<your-server-ip>:8080
Follow the PHP-Fusion installer steps:

Database Host: db

Username: fusionuser

Password: fusionpass

Database Name: fusion7

Once installed, delete or rename the install.php and setup.php files per the final step instructions.

7. (Optional) Auto-Restart on Reboot

docker update --restart unless-stopped fusion_web fusion_db
Bash

8. (Optional) Reverse Proxy with SSL (e.g., Nginx + Traefik or Caddy)
You can place a reverse proxy in front of your Docker services and assign them domain names + HTTPS certificates. Let me know in the comments if you want help with that part.

Share on Social Media
x facebook linkedin

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Join my LinkedIn Network.

Recent Posts

  • Automation – How to Automatically Clean Up Unused Docker Images
  • PHP-Fusion 7 CMS fully dockerized!
  • Kubernetes cluster. Why and how
  • Installing GNU-World on ircu2
  • Replacing Cloudflare Tunnel with Tailscale on a VPS

Archives

  • June 2025
  • February 2025
  • January 2025
  • October 2024
  • May 2024
  • March 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • September 2023
  • August 2023
  • July 2023
  • June 2023
  • May 2023
  • April 2023
  • March 2023
  • February 2023
  • January 2023

Categories

  • How-To
  • Tech Industry
  • Tech, but personal
  • Tutorials

Recent Comments

  1. IRC Lamer on Installing GNU-World on ircu2
  2. severus2231 on Transforming a Mini PC into a Powerful Home Network Hub / Router/ Firewall with OPNsense
  3. admin on Mounting a NAS (Network Attached Storage) device on Linux
  4. abL on Mounting a NAS (Network Attached Storage) device on Linux
  5. Alin R on Cleaning up your Linux OS.
Social Media
Find me on social media
Facebook Twitter Instagram LinkedIn

©2025 Marius Serbanica – Tech Blog