Add Docker setup, theme, and supporting files
parent
db4d539f02
commit
88c4e125a9
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"features": {
|
||||
"buildkit": true
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
services:
|
||||
wordpress:
|
||||
build: .
|
||||
container_name: imc_wp
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "8080:80"
|
||||
environment:
|
||||
WORDPRESS_DB_HOST: db
|
||||
WORDPRESS_DB_USER: wp_user
|
||||
WORDPRESS_DB_PASSWORD: wp_pass
|
||||
WORDPRESS_DB_NAME: wp_db
|
||||
volumes:
|
||||
# Persist only uploads; everything else stays in the image
|
||||
- ./wp-data/uploads:/var/www/html/wp-content/uploads
|
||||
# Optional custom PHP config
|
||||
- ./config/php.ini:/usr/local/etc/php/conf.d/custom.ini:ro
|
||||
# <-- NEW: expose the local images folder
|
||||
- ./theme/images:/var/www/html/wp-content/uploads/theme-images:ro
|
||||
db:
|
||||
image: mariadb:10.11
|
||||
container_name: imc_db
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MYSQL_RANDOM_ROOT_PASSWORD: "1"
|
||||
MYSQL_DATABASE: wp_db
|
||||
MYSQL_USER: wp_user
|
||||
MYSQL_PASSWORD: wp_pass
|
||||
volumes:
|
||||
- ./db-data:/var/lib/mysql
|
||||
|
||||
# Optional helper for ad‑hoc WP‑CLI commands
|
||||
wpcli:
|
||||
image: wordpress:cli
|
||||
depends_on:
|
||||
- wordpress
|
||||
- db
|
||||
volumes:
|
||||
- ./wp-data:/var/www/html
|
||||
entrypoint: ["wp"]
|
||||
environment:
|
||||
WP_CLI_URL: http://localhost:8080
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/bash
|
||||
set -e
|
||||
|
||||
# If the config file does not exist, generate it from the env vars
|
||||
if [ ! -f /var/www/html/wp-config.php ]; then
|
||||
wp config create \
|
||||
--dbname="${WORDPRESS_DB_NAME}" \
|
||||
--dbuser="${WORDPRESS_DB_USER}" \
|
||||
--dbpass="${WORDPRESS_DB_PASSWORD}" \
|
||||
--dbhost="${WORDPRESS_DB_HOST}" \
|
||||
--path=/var/www/html \
|
||||
--allow-root
|
||||
fi
|
||||
|
||||
# Hand over to the official WordPress entrypoint
|
||||
exec docker-entrypoint.sh "$@"
|
||||
Loading…
Reference in New Issue