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 8: Línia 8:
  
 
=== Migració de local a cloud extern ===
 
=== Migració de local a cloud extern ===
En primer lloc, instal·lem Docker i Docker Compose dins la nova màquina virtual.
+
En primer lloc, instal·lem Docker i Docker Compose dins la nova màquina virtual d'Azure.
 
<pre>sudo apt-get install docker.io docker-compose</pre>
 
<pre>sudo apt-get install docker.io docker-compose</pre>
Un cop tenim Docker instal·lat, crearem un nou fitxer amb el mateix contingut que el <code>docker-compose.yml</code> que tenim disponible en local, aixi com els fitxers amb les claus de MySQL per fer ús de Docker Secrets.
+
Un cop tenim Docker instal·lat, podem transferir els arxius del projecte mitjançant <code>scp</code>.
<pre>
+
<pre>scp -i (private key) ./docker-compose.yml (user)@(ip):~/wp-higiene-postural/docker-compose.yml</pre>ç
version: "3.3"
+
<pre>scp -i (private key) ./mysql_db_password.txt (user)@(ip):~/wp-higiene-postural/mysql_db_password.txt</pre>
 
+
<pre>scp -i (private key) ./mysql_root_password.txt (user)@(ip):~/wp-higiene-postural/mysql_root_password.txt</pre>
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:
 
</pre>
 
Un cop tenim tots els fitxers necessaris, en aixecar el nostre <code>docker-compose.yml</code>, 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 <code>tar</code> els directoris i els copiarem mitjançant <code>scp</code> desde la màquina local fins al home de la màquina virtual d'Azure.
 
<pre>tar -cvf ~/db_data.tar /var/lib/docker/volumes/wordpress-higiene-postural_db_data</pre>
 
<pre>tar -cvf ~/wordpress_data.tar /var/lib/docker/volumes/wordpress-higiene-postural_wordpress_data</pre>
 
<pre>scp -i (private key) -r ~/db_data.tar (user)@(ip):~/db_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>.
 
<pre>tar -xvf ~/db_data.tar -C /</pre>
 
<pre>tar -xvf ~/wordpress_data.tar -C /</pre>
 
  
 
== Referències ==
 
== Referències ==
 
* []
 
* []

Revisió del 14:40, 15 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 d'Azure.

sudo apt-get install docker.io docker-compose

Un cop tenim Docker instal·lat, podem transferir els arxius del projecte mitjançant scp.

scp -i (private key) ./docker-compose.yml (user)@(ip):~/wp-higiene-postural/docker-compose.yml

ç

scp -i (private key) ./mysql_db_password.txt (user)@(ip):~/wp-higiene-postural/mysql_db_password.txt
scp -i (private key) ./mysql_root_password.txt (user)@(ip):~/wp-higiene-postural/mysql_root_password.txt

Referències

  • []