I need help with open source project

I am looking for an expert in docker and architecture to create an open source application related to Stack LAMPS via Docker, docker compose.

I have an application (the project) created in C# .net8.0/winform for win-11, which does the following:

  1. This does an initial assessment looking for docker, the docker component and services are running, to ensure the main requirement is working.

  2. Makes an evaluation of the docker settings, since for this application to work correctly, we need certain parameters enabled by default; If it does not find those settings set with the necessary values, it will make the pertinent modifications and restart the services and the docker engine, as well as wsl.

  3. If the system determines that everything is correct, it will evaluate or install the following prerequisites: The need for the chocolatey package, to then be able to install mkcer and finally be able to add the ability to generate SSL certificates for custom URLs accessible internally.

  4. If everything above works correctly, the system will create 3 base containers:

a. WSDD-Proxy-Server: this container will be responsible for receiving requests and will function as a reverse proxy for the internal Docker network, providing access via custom url to the projects defined by the developer/administrator.

b. WSDD-Mysql-Server and WSDD-PhpMyAdmin-Server: These are two containers, one for the databases and the other for the database administrator.

  1. The system currently has the facility to alter the Windows hosts file automatically when new projects are added by adding lines such as:

127.0.0.1 project1.dock
127.0.0.1 project2.dock

This is done to redirect the requests to the proxy server so that it finds the corresponding container.

What is lacking:
Currently I need to be able to programmatically add the following structures using commands, because these will be used as command templates for the execution and construction of the projects.

I must provide developers/administrators from a graphical interface to choose the PHP/apache server version they want to install, with the idea of initially creating a project:

Example:

  • Apache+php7.4 Container (LAP Service Container = Linux, apache, php)
  • Project Directory #1 (Shared directory on the network)

Note: it is important that the Apache+php Container setup using the vhost can see and point to the Project #1 Directory that is located in the docker network.

Then if the user wants to add a project #2 and implement php 7.4, they would NO longer need to create the entire container, but rather the vhost would be updated by adding the custom path/url to the new directory. It is important that the container can support multiple urls. Something like:

environment:
       VIRTUAL_HOST: project1.dock

And this can be updated when new projects are added.

In the end the environment should have this scheme:

Some screenshots of the progress:

image

new update

Full window:

Half Window:

new update

Docker Utilities:

Add project windows:
Updated version of the previous one, new features were added that must and can be configured from the beginning of a project.

Captura de pantalla 2024-04-08 124241

Project/Container toolbox: