Docker Wordpress

Instal·lar virt-manager

@host sudo apt update sudo apt install -y virt-manager

Descarregar una imatge de disc dur virtual amb el Debian 11 preinstal·lat

Fes click-dreta al següent enllaç i guarda l'arxiu amb el nom debian-wordpress.qcow2

https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-nocloud-amd64.qcow2

Redimensionar el tamany del disc dur virtual (afegir 6 Gb)

@host sudo qemu-img resize Descargas/debian-wordpress.qcow2 +6G

Crear una màquina virtual

Obrim virt-manager i anem a ArchivoNueva máquina virtual

Seleccionem l'opció Importar imagen de disco existente i fem click en Adelante

Explorem la ruta de l'arxiu de disc dur virtual que hem descarregat abans. Fem click a Explorar... i després a Explorar localmente. Seleccionem l'arxiu debian-11-nocloud-amd64.qcow2

A l'opció Choose the operating system" escrvim Debian 10, i fem click en Adelante

Escollim la quatitat de memòria RAM i nuclis que utilitzarà la màquina virtual, i fem click en Adelante

En la Selección de Red seleccionem l'opció Red virtual 'default': NAT, i fem click en Finalizar

Configuració de la màquina

Obrim la màquina virtual, seleccionant-la i fent click a Abrir

Ens loguegem amb l'usuari root

Configurem el teclat instal·lant aquests paquets:

@virtual apt update apt install -y keyboard-configuration console-setup El caracter - el pots escriure prement la tecla ?

A la primera pantalla "Keyboard Layout" selecciona Other i després Spanish i Spanish - Catalan

A la segona pantalla "Character set to support" seleciona Guess optimal character set

Accés per ssh

Comprova si a la màquina host tens generades un parell de claus:

@host ls ~/.ssh/

Si apareixen dos arxius amb el mateix nom, però un d'ells amb l'extensió .pub, és que ja tens generades un parell de claus. Les pots aprofitar.

En cas contrari genera un parell de claus nou:

@host ssh-keygen

Els següent pas es transferir la clau pública .pub a la màquina virtual

Primer esbrinem la IP de la màquina virtual:

@virtual ip a

Utilitzant el programa netcat / nc posem a escoltar la màquina virtual a un port, per exemple el 8000. Les dades que es rebin per aquest port les enviarem al fitxer authorized_keys:

@virtual apt install -y netcat mkdir ~/.ssh/ nc -l 8000 > ~/.ssh/authorized_keys

Després, des del host, connectem a la màquina virtual i li enviem l'arxiu de clau pública id_rsa.pub:

@host sudo apt install -y netcat nc -N 192.168.122.XXX 8000 < ~/.ssh/id_rsa.pub substitueix la IP per la de la màquina virtual, i l'arxiu de clau pública per el que correspongui.

Per últim genera les claus de màquina a la màquina virtual

@virtual ssh-keygen -A

Reiniciem el servei sshd:

@virtual systemctl restart sshd

I ja podem accedir per ssh a la màquina virtual:

@host ssh root@192.168.122.XXX

Crear un compte a Github

Accedir a https://github.com/signup i seguir les passes indicades.

Generar un Personal access token

Accedir a https://github.com/settings/tokens i donar-li al botó Generate new token

En el camp note escriure algo com treball wordpress token

Marcar el checkbox repo

Donar-li al botó Generate token

Copia i desa aquest token (te'l pots enviar per email). Aquest token serà la contrasenya d'accés.

Fer un fork d'aquest repositori

Accedeix al repositori https://github.com/gerardfp/docker-wp i fes un fork

Clonar el repositori a la màquina virtual

Instal·la git a la màquina virtual:

@virtual apt install -y git git-lfs

Configura el teu nom i el teu email

@virtual git config --global user.name "gerard" git config --global user.email "gerardfp@gmail.com"

Activa git-lfs:

@virtual git lfs install

Clona el repositori:

@virtual git clone https://personal_acces_token@github.com/username/docker-wp

Substitueix el teu personal_acces_token i el teu nom d'usuari.

Instal·lar Docker en la màquina virtual

Instal·la docker

@virtual curl -fsSL https://get.docker.com -o get-docker.sh sh get-docker.sh

Instal·la docker-compose

@virtual curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose

Desplegar el Wordpress

Accedeix a la carpeta docker-wp:

@virtual cd docker-wp

Inicia els contenidors

@virtual docker-compose up -d

Configura el lloc wordpress

Utilitza Firefox per a accedir al teu wordpress. Posa la IP de la màquina virtual i el port 8000

http://192.168.122.106:8000

És possible que doni un error "Establishing database connection". Espera una estona i recarrega la pàgina.

Guardar els canvis a Github

Assegura't que estàs a la carpeta docker-wp:

@virtual cd ~/docker-wp

Publica els canvis a github:

@virtual git add . git commit -a -m"tot canviat" git push

Per a descarregar els canvis de github pots utilitzar:

@virtual git pull

... o bé, també pots eliminar la carpeta, i tornar a clonar el repo:

@virtual cd rm -r docker-wp git clone https://personal_acces_token@github.com/username/docker-wp

Crear un plugin de prova

Crea la carpeta i l'arxiu del plugin:

@virtual mkdir ~/docker-wp/wp_data/wp-content/plugins/myplugin nano ~/docker-wp/wp_data/wp-content/plugins/myplugin/myplugin.php ~/docker-wp/wp_data/wp-content/plugins/myplugin/myplugin.php <?php /** * Plugin Name: My First Plugin * Plugin URI: http://www.mywebsite.com/my-first-plugin * Description: The very first plugin that I have ever created. * Version: 1.0 * Author: Your Name * Author URI: http://www.mywebsite.com */ add_action( 'the_content', 'my_thank_you_text' ); function my_thank_you_text ( $content ) { return $content .= '<p>Thank you for reading!</p>'; }