[ C O D E ]
09.10.2026 · 8 min
TITLE..........Self-hosting WordPress in 10 minutes
DATE..........09.10.2026
TAGS..........docker, caddy
SIZE..........8 min

One compose file, three containers, automatic TLS.

Start with a clean VPS, install Docker and pull the official images. Caddy handles certificates.

[ /srv/yearone/compose.yml ]
yaml · 20L
1# yearone.cloud — three boxes, one file
2services:
3 db:
4 image: mariadb:11
5 restart: unless-stopped
6 environment:
7 MARIADB_DATABASE: yearone
8 MARIADB_PASSWORD: ${DB_PASS} # never commit .env
9 volumes:
10 - db:/var/lib/mysql
11 wordpress:
12 image: wordpress:6-php8.3
13 depends_on: [db]
14 volumes:
15 - ./wp-content:/var/www/html/wp-content
16 caddy:
17 image: caddy:2
18 ports: ["80:80", "443:443"]
19volumes:
20 db: {}
-- READ ONLY -- utf-8 · yaml · 20 lines
(c) 2026 yearone.cloud · root@yearone.cloud