Wiki content: verschil tussen versies

Uit DBLUG, Den Bosch Linux Users Group
Naar navigatie springen Naar zoeken springen
(typo and URL fix)
(→‎Copy script: voorschrijndend inzicht)
Regel 71: Regel 71:
 
# Destination are places ready for "restore"
 
# Destination are places ready for "restore"
 
JDC_W_DST=/var/www/html/p073lugwiki  # webserver
 
JDC_W_DST=/var/www/html/p073lugwiki  # webserver
JDC_F_DST=~/p073lugwiki  # rsync module
 
  
 
cd ${JDC_W_DST}
 
cd ${JDC_W_DST}
exec >> log_$(date +%Y%m%d).txt 2>&1
 
 
echo
 
echo
 
date
 
date
 +
echo vhost
 
wget -N ${JDC_V_SRC}
 
wget -N ${JDC_V_SRC}
 +
echo database dump
 
wget -N ${JDC_D_SRC}
 
wget -N ${JDC_D_SRC}
rsync --verbose --archive --delete ${JDC_F_SRC} ${JDC_F_DST}
+
echo rsyncing website files
 +
rsync --verbose --archive --delete ${JDC_F_SRC} .
 +
echo done
 
date
 
date
 
#
 
#

Versie van 31 jul 2016 15:26

De content, de inhoud, van de wiki is publiek beschikbaar. Zowel als bouwstenen als in webbrowser ready formaat.

Bouwstenen

Deze pagina gaat over die bouwstenen.

Waarom? Nou, dan is beschreven wat er is. Dan kun je er leuke dingen mee doen, bijvoorbeeld.

  • off site backups maken
  • restores uitvoeren, het ultime bewijs van een backup hebben
  • testomgevingen maken, voor bijvoorbeeld
    • upgrades
    • nieuwe plug-ins testen
    • spam opruimen, SQL delete statemens uitvoeren zonder dat de echte site in gevaar is
    • proefdraaien met andere database engines ( van mysql naar mariadb )

Vhost

Basis is een webserver die PHP code kan uitvoeren. Je hebt ook nog een database engine nodig, dat kan (op dezelfde server) met MySQL of Mariadb.

Op jheronimus2014 is/was dit ingebruik

  • nginx
  • php-fpm
  • mysql

Vhost definitie is op te halen met

wget http://lug.project073.nl/conf/vhost


Site

De site zelf is een mediawiki installatie.

Via http een kopie ophalen, dat gaat niet. Want met http krijg je de output van de PHP code, terwijl je de PHP source code wilt hebben. Vandaar dat er rsync gebruikt wordt.

mkdir -p /srv/http/project073.nl/lug \
&&   cd  /srv/http/project073.nl/lug \
rsync --archive --delete jheronimus.project073.nl::p073lugwiki .

Bij de volgende keren dat je die rsync uitvoert, worden alleen de verschillen bijgewerkt.

Database

Inhoud van de database is wel via http op te halen.

wget http://lug.project073.nl/dbd/lugwiki.sql.gz

Ter informatie

De database dump wordt iedere nacht nieuw gemaakt. Kort voor acht uur 's ochtends wordt de laatste versie op de webserver klaar gezet.

Copy script

De bouwstenen naar jouw server kopieren kan met het volgende script. Op jheronimus staat hoe je met rsync het script jherominusdatacopy krijgt.

#!/bin/bash
#
#  jheronimus data copy
#
JDC_V_SRC=http://lug.project073.nl/conf/vhost
JDC_F_SRC=jheronimus.project073.nl::p073lugwiki
JDC_D_SRC=http://lug.project073.nl/dbd/lugwiki.sql.gz
#
# Destination are places ready for "restore"
JDC_W_DST=/var/www/html/p073lugwiki  # webserver

cd ${JDC_W_DST}
echo
date
echo vhost
wget -N ${JDC_V_SRC}
echo database dump
wget -N ${JDC_D_SRC}
echo rsyncing website files
rsync --verbose --archive --delete ${JDC_F_SRC} .
echo done
date
#
# l l

In elkaar zetten

  • Maak de vhost (definitie) klaar
  • Kopieer m.b.v. rsync de site in de document root van je vhost
  • Importeer de database dump
  • Maak een database user die site en database verbind

Machinaal in elkaar zetten

Kan dat niet machinaal? Jawel!

git clone http://stappers.it/git/p073lugwiki-ansible/.git