WordPress: in Docker with Docker-Compose:
-
Create docker containers:
Create "docker-compose.yml": nano docker-compose.yml:
version: "3.9"
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
WORDPRESS_DB_NAME: wordpress
volumes:
db_data: {}
-
Build the project:
docker-compose up -d -
Test Wordpress: http://localhost:8000
-
Shutdown and cleanup (removes the containers, default network, but preserves the WordPress database):
docker-compose down -
Shutdown and cleanup (removes the containers, default network, and the WordPress database):
docker-compose down --volumes