.. | ||
docker-compose.yml | ||
Dockerfile | ||
index.html | ||
prepare-app.sh | ||
README.md | ||
remove-app.sh | ||
start-app.sh | ||
stop-app.sh |
Docker Web Application with MySQL and Nginx
Requirements
- Docker
- Docker Compose
Description
This web application consists of two services:
- A web service using Nginx to serve static HTML files.
- A database service using MySQL, which persists its data in a Docker volume.
Docker Volumes and Networks
- Volume:
db_data
- used to persist MySQL data. - Network:
app-network
- internal network for the services to communicate.
Configuration
- Nginx: Serves static HTML files from the
/html
directory. - MySQL: Configured with
MYSQL_ROOT_PASSWORD
and a default databasemydb
.
How to Use
Preparing the app
Run the following command to prepare the application:
./prepare-app.sh
Starting the app
To start the app, run:
./start-app.sh
The app will be available at http://localhost:5000
.
Stopping the app
To stop the app, run:
./stop-app.sh
Removing the app
To remove all resources related to the app, run:
./remove-app.sh
Example usage
# Prepare the app
./prepare-app.sh
Preparing app...
# Start the app
./start-app.sh
Running app ...
The app is available at http://localhost:5000
# Stop the app
./stop-app.sh
Stopping app...
# Remove the app
./remove-app.sh
Removed app.