# docker-lemp ## Overview `docker-lemp` is a Docker-based LEMP stack (Linux, Nginx, MySQL, PHP) for local development. This setup allows you to quickly spin up a LEMP environment for your web applications. ## Features - **Nginx**: High-performance web server. - **MySQL**: Popular relational database management system. - **PHP**: Server-side scripting language. - **Docker Compose**: Tool for defining and running multi-container Docker applications. ## Prerequisites - Docker - Docker Compose ## Getting Started 1. Clone the repository: ```sh git clone https://git.hpz.pw/hpz937/docker-lemp.git cd docker-lemp ``` 2. Build and start the containers: ```sh docker-compose up --build ``` 3. Access your application: - Web server: `https://localhost:8443` ## Configuration - **Nginx**: Configuration files are located in the `nginx` directory. - **PHP**: Configuration files are located in the `phpfpm` directory. ## SSL To generate a self-signed SSL certificate and `dhparam.pem`, follow these steps: 1. Create the `nginx/ssl` directory if it doesn't exist: ```sh mkdir -p nginx/ssl ``` 2. Generate a self-signed SSL certificate: ```sh openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout nginx/ssl/key.pem -out nginx/ssl/cert.pem ``` 3. Generate a `dhparam.pem` file: ```sh openssl dhparam -out nginx/ssl/dhparam.pem 2048 ``` These files will be used by Nginx for SSL termination. ## Usage - To stop the containers: ```sh docker-compose down ``` - To rebuild the containers: ```sh docker-compose up --build ``` ## Contributing Contributions are welcome! Please open an issue or submit a pull request. ## License This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.