Skip to content

wnunezc/webstack-deployer-for-docker

Repository files navigation

WebStack Deployer for Docker (WSDD)

A Windows desktop application that simplifies web stack deployment using Docker, featuring an intuitive graphical interface and complete process automation.

🚀 Key Features

  • Automatic Docker Management: Verification, installation, and configuration of Docker Desktop
  • Web Project Deployment: Creation and management of projects with predefined templates
  • Local SSL Certificates: MKCert integration for secure development
  • Hosts Management: Automatic modification of system hosts file
  • Complete Graphical Interface: Multiple forms for configuration and monitoring
  • PowerShell Automation: Automated scripts for system tasks
  • WSL Support: Windows Subsystem for Linux configuration
  • Multi-PHP Version Support: PHP 5.6, 7.2, 7.4, 8.1, 8.2, 8.3, 8.4 with dedicated containers
  • Development Environment URLs: Automatic setup of php{version}.wsdd.dock, cron{version}.wsdd.dock, wm{version}.wsdd.dock

🛠️ Technologies

  • .NET 8.0 - Main framework
  • Windows Forms - Graphical user interface
  • PowerShell - Script automation
  • Docker - Containerization
  • XML/YAML - Project configuration
  • WSL - Windows Subsystem for Linux
  • Apache - Web server in containers
  • MySQL - Database server
  • phpMyAdmin - Database management
  • Nginx Proxy - Reverse proxy for routing

📋 System Requirements

  • Operating System: Windows 10/11
  • Framework: .NET 8.0 Runtime
  • Privileges: Administrator (required)
  • Docker Desktop: Must be installed and running
  • WSL: Automatically configured

🚀 Installation

  1. Download the latest version from Releases
  2. Run as administrator
  3. Follow the initial configuration wizard
  4. The application will automatically configure Docker and dependencies

📖 Usage

First Run

  1. Run as administrator
  2. Complete the welcome wizard
  3. Configure display (if multiple monitors)
  4. Wait for automatic Docker configuration

Create New Project

  1. Click "Add New Project"
  2. Select web stack template
  3. Choose PHP version (5.6, 7.2, 7.4, 8.1, 8.2, 8.3, 8.4)
  4. Configure project parameters
  5. Start automatic deployment

Project Management

  • View active projects in main panel
  • Start/stop containers
  • View real-time logs
  • Manage configurations
  • Access development URLs automatically

🏗️ Architecture

WebStack Deployer for Docker/
├── Forms/                  # User interfaces
├── Handlers/              # Business logic
├── Resources/             # Embedded resources
├── Properties/            # Project configuration
└── Others/               # Auxiliary files

🔧 Configuration

The application automatically creates:

  • Working directory in %USERPROFILE%\.wsdd
  • Docker configurations
  • Local SSL certificates
  • Hosts file entries
  • PHP container environments with development URLs

🐳 Docker Containers

Core Services

  • WSDD-Proxy-Server: Nginx reverse proxy (ports 80/443)
  • WSDD-MySql-Server: MySQL database server (port 3306)
  • WSDD-phpMyAdmin-Server: Database management interface

PHP Containers (per version)

  • WSDD-Web-Server-PHP{VERSION}: Apache + PHP + Xdebug
  • Development URLs:
    • php{version}.wsdd.dock - Main development interface
    • cron{version}.wsdd.dock - Cron management
    • wm{version}.wsdd.dock - Webmin interface

🤝 Contributing

  1. Fork the repository
  2. Create feature branch (git checkout -b feature/new-feature)
  3. Commit changes (git commit -am 'Add new feature')
  4. Push to branch (git push origin feature/new-feature)
  5. Create Pull Request

📝 License

This project is under the MIT License - see the LICENSE file for details.

🐛 Report Issues

To report bugs or request new features, use GitHub Issues.

📞 Support

  • Documentation: See .md files in the repository
  • Issues: GitHub Issues for technical problems
  • Discussions: GitHub Discussions for general questions

Note: This application requires administrator privileges to function correctly due to system modifications it performs (hosts, Docker, certificates).

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

Watchers

Forks

Packages

No packages published

Languages