Poglavje 7 · 7.4
WordPress v Dockerju
Ali želite WordPress namesto v paketu gostovanja zagnati na svojem VPS? Z Dockerjem postavite WordPress in podatkovno zbirko drugo ob drugo, za https pa poskrbi Caddy.
Nasvet: V paketu gostovanja WebOké namesto Vas skrbi za strežnik, posodobitve PHP in varnostne kopije. VPS izberite, če to svobodo res potrebujete.
Vsak recept nadgrajuje delovno mapo /srv/diensten s Caddyjem iz članka Vaša delovna mapa s compose.yaml, .env in Caddy. V compose.yaml dodate storitev, v Caddyfile blok, za ime pa zapis A in AAAA (glejte Zapis A in AAAA v razdelku Moje domene).
1. DNS
Z zapisom A in AAAA nastavite, da example.com in www.example.com kažeta na Vaš VPS. Če Vaše spletno mesto trenutno še deluje drugje, to storite šele, ko je novo spletno mesto pripravljeno.
2. Geslo za podatkovno zbirko v .env
anna@web1:/srv/diensten$ openssl rand -base64 24
Rezultat vpišite v .env kot WP_DB_WACHTWOORD=....
3. compose.yaml
wordpress:
image: wordpress
restart: unless-stopped
environment:
WORDPRESS_DB_HOST: wp-db
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: ${WP_DB_WACHTWOORD}
WORDPRESS_DB_NAME: wordpress
volumes:
- wordpress:/var/www/html
depends_on:
- wp-db
wp-db:
image: mariadb:11.8
restart: unless-stopped
environment:
MARIADB_DATABASE: wordpress
MARIADB_USER: wordpress
MARIADB_PASSWORD: ${WP_DB_WACHTWOORD}
MARIADB_RANDOM_ROOT_PASSWORD: "1"
volumes:
- wp-db:/var/lib/mysql
In pod volumes::
wordpress:
wp-db:
Podatkovna zbirka ne dobi ports:: WordPress jo najde po imenu wp-db (glejte Docker in požarni zid: varna objava vrat).
4. Caddyfile
example.com, www.example.com {
reverse_proxy wordpress:80
}
anna@web1:/srv/diensten$ sudo docker compose up -d
anna@web1:/srv/diensten$ sudo docker compose exec -w /etc/caddy caddy caddy reload
Odprite https://example.com in takoj opravite namestitev WordPressa. Image WordPressa samodejno prepozna, da deluje za proxyjem https.
Posodabljanje
- WordPress, vtičnike in teme posodabljate kot vedno, na nadzorni plošči WordPressa. Shranjeni so v nosilcu
wordpress. - PHP in spletni strežnik sta del imagea. Posodobite ju z
docker compose pullinup -d(glejte Posodabljanje vsebnikov, čiščenje in omejevanje dnevnikov).
Pošta in varnostna kopija
WordPress pošilja pošto (pozabljeno geslo, obrazci). Ker so vrata 25 zaprta, uporabite vtičnik SMTP s poštnim predalom na vratih 587 (glejte Obratni DNS in pošiljanje pošte z Vašega VPS). Za varnostno kopijo potrebujete dve stvari: izpis (dump) podatkovne zbirke in nosilec wordpress z Vašimi naloženimi datotekami. Glejte Pravilno varnostno kopiranje podatkovnih zbirk in nosilcev Docker.
Več o samem WordPressu, na primer o vtičnikih in varnosti, preberite v tečaju WordPress.
