Dockerized Debian-Apache-PHP-IonCube WebServer
460
This Docker container provides a pre-configured Debian (bullseye), Apache2, PHP (8.1), and Ioncube (DAPI) stack, allowing you to easily deploy web applications such as WHMCS or other similar platforms behind a Traefik reverse proxy. With Traefik, you can efficiently manage incoming requests and route them to the appropriate container. You can use any type of reverse proxy to be fair.
Before you begin, ensure that you have the following components installed:
To deploy the DAPI stack container with Traefik, follow these steps:
version: "3.9"
services:
whmcs:
image: docker.io/sushibox/dapi:latest
restart: always
ports:
- 80:80
volumes:
- /opt/dapi:/var/www/html
labels:
- "traefik.enable=true"
mariadb:
image: mariadb
restart: always
environment:
MYSQL_DATABASE: whmcs
MYSQL_USER: whmcs
MYSQL_PASSWORD: whmcs
MYSQL_RANDOM_ROOT_PASSWORD: whmcs
volumes:
- /opt/dapi/db:/var/lib/mysql
volumes:
mysql:
Save the docker-compose.yml file.
Open a terminal or command prompt, navigate to the directory where you saved the docker-compose.yml file, and run the following command:
docker-compose up -d
docker-compose ps
docker run -d \
--name whmcs \
-p 80:80 \
-v /opt/dapi:/var/www/html \
docker.io/sushibox/dapi:latest
docker run -d \
--name mariadb \
-e MYSQL_DATABASE=whmcs \
-e MYSQL_USER=whmcs \
-e MYSQL_PASSWORD=whmcs \
-e MYSQL_RANDOM_ROOT_PASSWORD=whmcs \
-v /opt/dapi/db:/var/lib/mysql \
mariadb
By default, this container exposes port 80, allowing HTTP traffic to reach your web application. Ensure that you have set up Traefik correctly to handle incoming requests and route them to this container.
If you wish to customize the configuration or add additional services, you can modify the docker-compose.yml file accordingly.
This container uses the following volumes:
/var/www/html: Mount this volume to persistently store your web application files./var/lib/mysql: Mount this volume to persistently store the MariaDB database files.You can adjust the volume paths in the docker-compose.yml file to match your desired locations on the host machine.
If you encounter any issues or need further assistance, consider checking the following:
Content type
Image
Digest
sha256:e157e8bd0…
Size
290.5 MB
Last updated
over 1 year ago
docker pull sushibox/dapi