Skip to content

Combodo/docker-environment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

63 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Dockered iTop

This repository contains a Docker environment for running iTop, an open-source IT service management tool.
The environment is designed to be easy to set up and use, with all necessary components included.

Warning

Mind that this environment is intended for development and testing purposes only.
It should not be used for production.

Documentation

πŸ““ Quick Start: Windows WSL2

πŸ““ Quick Start: Ubuntu

πŸ““ iTop installation

πŸ““ How To

πŸ““ PhpStorm Tips

πŸ““ PHP Switcher Browser Extension

πŸ““ Docker Useful Commands

πŸ““ Troubleshooting

Docker containers

Find below, a short description of containers available in the Docker environment.

Docker Infra

Tip

Containers ports can be modified in the .env.local file if they don't suit your need or are already used by others applications.

Web Servers

The containers in charge of serving the web pages.

Tip

You can change the default web server. How To...

Default Listened Ports

  • 74 Serve pages based on PHP 7.4.

  • 80 Serve pages based on PHP 8.0.

  • 81 Serve pages based on PHP 8.1.

  • 82 Serve pages based on PHP 8.2.

  • 83 Serve pages based on PHP 8.3.

  • 84 Serve pages based on PHP 8.4.

  • 88 (Automatic Mode) To serve pages based on PHP version passed in request header X-PHP-Version.

  • 443 (Automatic Mode) To serve pages based on PHP version passed in request header X-PHP-Version with HTTPS protocol.

Automatic Mode

With automatic mode, web servers will serve pages based on the PHP version passed in the request header X-PHP-Version.
A browser extension (Chrome and Firefox) is provided to easily switch between PHP versions.
You also can use one of the official browser extensions allowing to add custom headers then set yourself the desired PHP version.
X-PHP-Version = 82 for PHP 8.2.

PHP auto

Nginx (default)

The container for Nginx webserver.
A self-signed certificate is included in the certs conf directory allowing HTTPS.

Official build of Nginx.
Based on nginx:alpine

🐳 Docker official image page

Note

app.conf file is included in the nginx conf directory to configure Nginx settings. How To...

Apache

The container for Apache webserver.
A self-signed certificate is included in the certs conf directory allowing HTTPS.

Official build of Apache.
Based on httpd:latest

🐳 Docker official image page

Note

httpd.conf file is included in the apache conf directory to configure Apache settings. How To...
httpd-vhosts.conf file is included in the apache conf directory to configure virtual hosts. How To...

PHP FPM X.X

The containers in charge of the PHP script processing.
Based on php:x.x-fpm image, this extended image includes xdebug, all needed php extensions, graphviz and a MariaDB client to run iTop.

While designed for web development, the PHP scripting language also provides general-purpose use.

🐳 Docker official image page

Note

php.ini file is included in the php conf directory to configure PHP settings. How To...
xdebug.ini file is included in the php conf directory to configure XDebug settings. How To...

Tip

You can add a new PHP version. How To...

MariaDB

The container for MariaDB database.

MariaDB Server is a high performing open source relational database, forked from MySQL.
Based on mariadb image.

🐳 Docker official image page

Default Listened Ports

  • 3306

MySQL

The container for MySQL database.

MySQL is a widely used, open-source relational database management system (RDBMS). Based on mysql image.

🐳 Docker official image page

Default Listened Ports

  • 3307

Adminer

The container for database web administration.

Database management in a single PHP file. Based on adminer image.

🐳 Docker official image page

Default Listened Ports

  • 8080

MailPit

The container for mailer testing.

Mailpit is packed full of features for developers wanting to test SMTP and emails. It acts as an SMTP server, provides a modern web interface to view & test intercepted emails. It also contains an API for automated integration testing. Based on axllent/mailpit image.

🐳 Docker official image page

Default Listened Ports

  • 8025 WebUI
  • 1025 SMTP

Script-server

The container for scripts execution.

Script-server allows you to execute pre-configured CLI scripts directly from a Web UI. No need for SSH connection, knowing commands exact syntax. Based on bugy/script-server image.

🐳 Docker official image page

Default Listened Ports

  • 8090 WebUI