Diferencia entre revisiones de «Despliegue de aplicaciones: Máquinas virtuales»

De Wiki de EGC
Saltar a: navegación, buscar
(Página creada con « =Presentación= * Archivo:presentacion.pdf * [https://hdvirtual.us.es/discovirt/index.php/s/iyTyTEcYyk43HBM Video de la clase] = Prerequisitos = * [https://hdvirtual...»)
 
(Prerequisitos)
 
(No se muestran 8 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
 
+
<!--
 
=Presentación=
 
=Presentación=
 
* [[Archivo:presentacion.pdf]]
 
* [[Archivo:presentacion.pdf]]
 
* [https://hdvirtual.us.es/discovirt/index.php/s/iyTyTEcYyk43HBM Video de la clase]
 
* [https://hdvirtual.us.es/discovirt/index.php/s/iyTyTEcYyk43HBM Video de la clase]
 +
-->
 +
= Clase grabada =
 +
* [https://hdvirtual.us.es/discovirt/index.php/s/AGaZyBmGxCJ7jDX Video de la clase]
  
 
= Prerequisitos =
 
= Prerequisitos =
  
* [https://hdvirtual.us.es/discovirt/index.php/s/bF46iiyBe2a3CZS Vídeo explicando la instalación de podman y docker]
+
* [https://hdvirtual.us.es/discovirt/index.php/s/dNeT979ie3SWofy Vídeo explicando la instalación de los prerequisitos y configuración]
  
Instalación Podman
+
Instalación Vagrant Ansible y virtualbox
 
----------------------------
 
----------------------------
 
* [https://asciinema.org/a/XNuqZeZ2VoU9RjBaZ4U7Ynp9V Asciinema sobre instalación Podman]
 
* [https://podman.io/getting-started/installation Sitio web con instrucciones para instalar Podman en múltiples plataformas]
 
  
 
Instrucciones para instalar sobre Ubuntu 20.04
 
Instrucciones para instalar sobre Ubuntu 20.04
 
<syntaxhighlight lang="bash" line='line'>
 
<syntaxhighlight lang="bash" line='line'>
echo "deb https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/ /" | sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list
+
sudo apt update
curl -L https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/Release.key | sudo apt-key add -
+
sudo apt install vagrant ansible virtualbox
sudo apt-get update
 
sudo apt-get -y upgrade
 
sudo apt-get -y install podman
 
  
#Probamos si funciona correctamente con:
+
#Para probar que funciona
podman run hello-world
+
vagrant init ubuntu/trusty32
 
+
vagrant up
#Extra para wls https://oldgitops.medium.com/setting-up-podman-on-wsl2-in-windows-10-be2991c2d443
+
vagrant ssh -c 'hostnamectl' 
 +
#Comparar que devuelve el comando con respecto a ejecutar hostnamectl en local
 +
vagrant destroy #Para eliminar la imagen y liberar espacio
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Instalación Docker
+
Para esta práctica es altamente recomendable usar una partición en Linux. Leed este texto hasta el final. Tanto el uso dentro de virtualbox como en WSL requieren de bastante configuración.
----------------------------
 
* [https://asciinema.org/a/5rxgP7Wa2z80kVhz4FqGcDNfg Asciinema sobre instalación Docker]
 
* [https://docs.docker.com/get-docker/ Sitio web con instrucciones para instalar Podman en múltiples plataformas]
 
 
 
Instrucciones para instlar sobre Ubuntu 20.04
 
<syntaxhighlight lang="bash" line='line'>
 
#Desinstalamos versiones antiguas:
 
sudo apt-get remove docker docker-engine docker.io containerd runc
 
 
 
#Instalamos dependencias
 
sudo apt-get update
 
 
 
sudo apt-get install \
 
    apt-transport-https \
 
    ca-certificates \
 
    curl \
 
    gnupg-agent \
 
    software-properties-common
 
 
 
# Instalamos llave de cifrado
 
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
 
 
 
# Añadimos el repositorio
 
sudo add-apt-repository \
 
  "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
 
  $(lsb_release -cs) \
 
  stable"
 
 
 
# Instalamos docker
 
sudo apt-get update
 
sudo apt-get install docker-ce docker-ce-cli containerd.io
 
 
 
# Instalamos docker-compose
 
sudo apt-get install docker-compose
 
 
 
# Añadimos nuestro usuario al grupo docker
 
sudo usermod -aG docker $USER
 
 
 
# Tenemos que salir de la sesión y volver a entrar para que los cambios tomen efecto
 
 
 
# Probamos que fundiona con:
 
docker run hello-world
 
 
 
# NOTA: En caso de usar WSL, arrancar el servicio con sudo service docker start
 
 
 
</syntaxhighlight>
 
= Ordenes para docker =
 
  
* [[Lanzando un hola mundo]]
+
En caso de usar máquina virtual hay que habilitar la virtualización anidada y asegurarse de tener suficiente espacio en disco.
* [[Operando con las imagenes]]
+
* [https://www.raulprietofernandez.net/blog/virtualizacion/como-redimensionar-un-disco-virtual-en-virtualbox Espacio en disco].
* [[Operando con los contenedores]]
+
* [https://www.zonasystem.com/2019/02/habilitar-virtualizacion-anidada-vt-x-amd-v-virtualbox.html Virtualización anidada]
* [[Modificando una imagen]]
+
En caso de usar WSL teneis el [https://www.vagrantup.com/docs/other/wsl tutorial de la propia Vagrant].
  
= Ejemplos  =
+
Intentad configurarlo, a aquellos que no consigan preparar la práctica se les habilitará acceso a una máquina remota.
  
* [https://docs.docker.com/compose/wordpress/ Para instalar WordPress y MySQL]
+
Ejercicios
* [http://codeomitted.com/deploy-war-file-to-docker-image/ Para construir una imagen con Tomcat básica]
+
------------------------------
* [https://runnable.com/docker/java/dockerize-your-java-application Para construir una imagen Java muy personalizada].
 
* [https://1984.lsi.us.es/wiki-egc/index.php/Gesti%C3%B3n_del_despliegue:_Taller_de_Docker Ejemplo con un hola mundo en spring]
 
  
=Ejercicios=
+
* [[Operaciones básicas en Vagrant]]
* [[Ejercicio 0: Ejecutando comandos simples de docker/podman]]
+
* [[Encapsulado y aprovisionamiento de una app en Vagrant]]
* [[Ejercicio 1: Creando mi propia imagen para una app python]]
+
* [[Despliegue de Decide en Vagrant]]
* [[Ejercicio 2: Ejecutando decide en docker-compose]]
 

Revisión actual del 00:56 4 dic 2020

Clase grabada

Prerequisitos

Instalación Vagrant Ansible y virtualbox


Instrucciones para instalar sobre Ubuntu 20.04

1 sudo apt update
2 sudo apt install vagrant ansible virtualbox
3 
4 #Para probar que funciona
5 vagrant init ubuntu/trusty32
6 vagrant up
7 vagrant ssh -c 'hostnamectl'   
8 #Comparar que devuelve el comando con respecto a ejecutar hostnamectl en local
9 vagrant destroy #Para eliminar la imagen y liberar espacio

Para esta práctica es altamente recomendable usar una partición en Linux. Leed este texto hasta el final. Tanto el uso dentro de virtualbox como en WSL requieren de bastante configuración.

En caso de usar máquina virtual hay que habilitar la virtualización anidada y asegurarse de tener suficiente espacio en disco.

En caso de usar WSL teneis el tutorial de la propia Vagrant.

Intentad configurarlo, a aquellos que no consigan preparar la práctica se les habilitará acceso a una máquina remota.

Ejercicios