Files
disobey.dev/content/posts/wordpress-docker-setup.md
Claude 912c0f527e Migrate all blog posts from live site
Crawled https://disobey.dev/ and recreated all 10 blog posts with:
- Preserved URLs using slug parameter in front matter
- Original publication dates maintained
- Proper Hugo front matter with tags/categories
- Markdown formatting

Posts migrated (chronological):
- Github no more? (2025-08-17)
- A true believer (2025-08-14)
- how to post videos everyone can watch (2025-05-22)
- wordpress docker setup (2025-05-05)
- I built timeconvert.org (2025-01-31)
- cryptoanarchy.info (2024-11-29)
- quickly accessing llama3.2 from a terminal (2024-10-18)
- The Untold Story of the Greatest Crypto Project Ever (2024-10-03)
- the directory guy (2024-09-29)
- AI blogs and resource (2024-09-26)
2025-11-06 10:23:08 +00:00

24 lines
1.4 KiB
Markdown

---
title: "wordpress docker setup"
date: 2025-05-05
slug: "wordpress-docker-setup"
draft: false
---
The author shares a Docker configuration for quickly deploying WordPress, developed while creating a WooCommerce extension. The setup involves two main components:
## Docker Compose Configuration
The article provides a `docker-compose.yml` file featuring a WordPress service and MySQL database. The WordPress container exposes port 12999 and connects to the database using environment variables. The setup includes volume mounting for `wp-content` directory and establishes networking between services using a bridge network called `wp-network`. The MySQL database is configured with persistent storage through named volumes.
## Nginx Reverse Proxy Setup
A critical configuration element involves setting up an Nginx reverse proxy with HTTPS support. The author emphasizes that "you need to set https headers for the proxy otherwise wordpress will serve the content back in mixed mode" and cause browser complaints.
Key proxy headers include:
- `X-Forwarded-Proto https` for protocol preservation
- HTTP/1.1 upgrade settings for connection compatibility
- Host header configuration for proper routing
The configuration integrates with Let's Encrypt SSL certificates for HTTPS termination, creating a secure connection between the reverse proxy and clients while communicating with the containerized WordPress installation.