Diferència entre revisions de la pàgina «Grup 3 - Posada en producció classVRroom dockeritzat (Azure)»

De Wiket
Salta a la navegació Salta a la cerca
Línia 63: Línia 63:
 
<pre>scp -i (private key) -r ~/wordpress_data.tar (user)@(ip):~/wordpress_data.tar</pre>
 
<pre>scp -i (private key) -r ~/wordpress_data.tar (user)@(ip):~/wordpress_data.tar</pre>
 
Un cop hem pujat aquests directoris a la màquina virtual d'Azure, simplement els hem de moure a la localització correcte dins de <code>/var/lib/docker/volumes/</code>.
 
Un cop hem pujat aquests directoris a la màquina virtual d'Azure, simplement els hem de moure a la localització correcte dins de <code>/var/lib/docker/volumes/</code>.
<pre>mv ~/wordpress-higiene-postural_db_data /var/lib/docker/volumes/wp-higiene-postural_db_data</pre>
+
<pre>tar -xvf ~/db_data.tar -C /</pre>
<pre>mv ~/wordpress-higiene-postural_wordpress_data /var7lib/docker/volumes/wp-higiene-postural_wordpress_data</pre>
+
<pre>tar -xvf ~/wordpress_data.tar -C /</pre>
  
 
== Referències ==
 
== Referències ==
 
* []
 
* []

Revisió del 17:33, 14 març 2022

Tornar a Projecte IETI Cloud - Grup 3.

Tasca

Posada en producció de la web d'higiene postural dockeritzada sobre cloud extern (Azure).

Informe

Posarem en producció el nostre WordPress prèviament desplegat en local sobre una màquina virtual amb sistema operatiu Ubuntu dins d'Azure.

Migració de local a cloud extern

En primer lloc, instal·lem Docker i Docker Compose dins la nova màquina virtual.

sudo apt-get install docker.io docker-compose

Un cop tenim Docker instal·lat, crearem un nou fitxer amb el mateix contingut que el docker-compose.yml que tenim disponible en local, aixi com els fitxers amb les claus de MySQL per fer ús de Docker Secrets.

version: "3.3"

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     environment:
       MYSQL_ROOT_PASSWORD_FILE: /run/secrets/mysql_root_password
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wpadmin
       MYSQL_PASSWORD_FILE: /run/secrets/mysql_db_password
     secrets:
       - mysql_root_password
       - mysql_db_password

   wordpress:
     depends_on:
       - db
     image: wordpress:5.9.2
     volumes:
      - wordpress_data:/var/www/html
     ports:
       - "8000:80"
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wpadmin
       WORDPRESS_DB_NAME: wordpress
       WORDPRESS_DB_PASSWORD_FILE: /run/secrets/mysql_db_password
     secrets:
       - mysql_db_password


secrets:
   mysql_db_password:
     file: mysql_db_password.txt
   mysql_root_password:
     file: mysql_root_password.txt

volumes:
    db_data:
    wordpress_data:

Un cop tenim tots els fitxers necessaris, en aixecar el nostre docker-compose.yml, ja tenim disponible un WordPress dins la màquina virtual d'Azure.

Encara, però, ens fa falta pujar els canvis que vam realitzar en local per tenir la mateixa configuració que tenim en local. Ja que vam declarar volums pels nostres contenidors ens serà relativament fàcil copiar aquests volums sobre la màquina virtual d'Azure. Comprimirem amb tar els directoris i els copiarem mitjançant scp desde la màquina local fins al home de la màquina virtual d'Azure.

tar -cvf ~/db_data.tar /var/lib/docker/volumes/wordpress-higiene-postural_db_data
tar -cvf ~/wordpress_data.tar /var/lib/docker/volumes/wordpress-higiene-postural_wordpress_data
scp -i (private key) -r ~/db_data.tar (user)@(ip):~/db_data.tar
scp -i (private key) -r ~/wordpress_data.tar (user)@(ip):~/wordpress_data.tar

Un cop hem pujat aquests directoris a la màquina virtual d'Azure, simplement els hem de moure a la localització correcte dins de /var/lib/docker/volumes/.

tar -xvf ~/db_data.tar -C /
tar -xvf ~/wordpress_data.tar -C /

Referències

  • []