# Inicio a la Virtualización

En esta serie de documentos encontrarás toda la información que he ido recopilando durante el tiempo que llevo interesado con este tema, ya sea diferencias de Hypervisores, qué tipos de sistemas se virtualizan y programas / sistemas operativos.

# Tipos de Hypervisores

### <span>¿Qué es la virtualización?</span>

<span>La virtualización no deja de ser una simulación o emulación de un entorno de software, ya sea un SO o una aplicación o conjunto de aplicaciones. Separando los recursos físicos (hardware) para crear sistemas independientes, los unos de los otros como máquinas virtuales o contenedores (LXC, Docker...). Independientemente de lo que vayamos a virtualizar tenemos que saber que son los “Hipervisores”, los encargados de ejecutar todo tipo de MV o Contenedor y es el encargado de asignar aspectos básicos para el funcionamiento como la CPU, RAM, Almacenamiento entre otros a cada VM o contenedor.</span>

### <span>Tipos de hipervisor</span>

<p class="callout info"><span>Tipo 1→ Es el que no necesita sistema operativo, sino que se ejecuta en su lugar, lo que reduce considerablemente los recursos que se le dan al host. Con lo que este tipo se suele usar para los servidores, ya que no es necesario tener un sistema operativo debajo del hipervisor que ocupe recursos inútilmente. Ejemplos de este tipo de hipervisor tenemos Hyper-V, ESXi, Proxmox entre otros.</span></p>

<p class="callout info"><span>Tipo 2→ Es el hipervisor ejecutado en un sistema operativo, ya sea “Windows” o “Linux” como si fuera un programa más. Este tipo suele ser el más común, ya que para uso personal es la mejor opción, porque tienes tu sistema operativo host y después tus VM. Ejemplos de este tipo de hipervisor tenemos los dos más populares VMWare y VirtualBox del que vamos a hablar más en profundidad en el resto del documento.</span></p>

[![tipos&#95;de&#95;hypervisor.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/q2Y0frJaoTBjakyh-tipos-de-hypervisor.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/q2Y0frJaoTBjakyh-tipos-de-hypervisor.png)

# Tipos de Virtualización

Explicación de los tipos más usados de la virtualización, como por ejemplo Máquinas virtuales y Contenedores.

# Máquina Virtual

### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjB1bmElMjBtJUMzJUExcXVpbmElMjB2aXJ0dWFsJTNGJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlMkMlMjJzZWxlY3Rpb25zJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTE1N2UyMmZhOTA3NGMyNTllZjA4YThkNmIyZmMxOGYlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI3ZDY4YTcyYWFmMjU0YTQ2YTg5MTVmOWY1NjgzMjNhZiUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjNhYmQ4ZGEyZDA4NDRhMjA4YmI1ZGIyYjhkM2EzNDJjJTIyJTdE">¿Qué es una máquina virtual?</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjB1bmElMjBtJUMzJUExcXVpbmElMjB2aXJ0dWFsJTNGJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlMkMlMjJzZWxlY3Rpb25zJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTE1N2UyMmZhOTA3NGMyNTllZjA4YThkNmIyZmMxOGYlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI3ZDY4YTcyYWFmMjU0YTQ2YTg5MTVmOWY1NjgzMjNhZiUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjNhYmQ4ZGEyZDA4NDRhMjA4YmI1ZGIyYjhkM2EzNDJjJTIyJTdE">Una máquina virtual es un software que crea una capa independiente donde se emula el funcionamiento de una máquina real con sus respectivos componentes de hardware que necesita para funcionar (disco duro, memoria RAM, tarjetas de red gráfica, etc.), esta puede ejecutar cualquier sistema operativo o programa como lo haría una máquina real.</span>

[![yEwTEO7lo94G6D4W-vm.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/KCFwhRvscerxRdtk-yewteo7lo94g6d4w-vm.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/KCFwhRvscerxRdtk-yewteo7lo94g6d4w-vm.png)

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlRvZGElMjBlc3RhJTIwc2ltdWxhY2klQzMlQjNuJTIwc2UlMjBlbmNhcHN1bGElMjBlbiUyMHVuYSUyMHNlcmllJTIwZGUlMjBhcmNoaXZvcyUyMHF1ZSUyMGFjdCVDMyVCQWFuJTIwY29tbyUyMGNvbnRlbmVkb3IlMjBkZXNkZSUyMGVsJTIwcXVlJTIwc2UlMjBlamVjdXRhciVDMyVBMSUyMGxhJTIwbSVDMyVBMXF1aW5hJTIwdmlydHVhbCUyMGVuJTIwdW5hJTIwdmVudGFuYSUyMGRlJTIwbnVlc3RybyUyMG9yZGVuYWRvciUyMGNvbW8lMjBjdWFscXVpZXIlMjBvdHJvJTIwcHJvZ3JhbWElMjB5JTIwc2luJTIwZWwlMjBwZWxpZ3JvJTIwZGUlMjBxdWUlMjBuYWRhJTIwcXUlQzMlQTklMjBsZSUyMHN1Y2VkYSUyMGFjYWJlJTIwYWZlY3RhbmRvJTIwYSUyMG51ZXN0cmElMjBtJUMzJUExcXVpbmElMjByZWFsJTIwbGElMjBjdWFsJTIwZXN0JUMzJUExJTIwZWplY3V0JUMzJUExbmRvbGEuJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlMkMlMjJzZWxlY3Rpb25zJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyZTA4MGY2NDE3ZDdjNGU1ZGJiNmJjZjc0OWVkMzRlMmQlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJjOWY3OTFjM2U1MzY0NmYyYWQ4MTBlNmRhYzhmNjY0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmJkOTAyNzlmYzYwMDRiOWFhZDEzOWQ4ZDAyODQyMWU4JTIyJTdE">Toda esta simulación se encapsula en una serie de archivos que actúan como contenedor desde el que se ejecutará la máquina virtual en una ventana de nuestro ordenador como cualquier otro programa y sin el peligro de que nada qué le suceda acabe afectando a nuestra máquina real la cual está ejecutándola.</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlRvZGElMjBlc3RhJTIwc2ltdWxhY2klQzMlQjNuJTIwc2UlMjBlbmNhcHN1bGElMjBlbiUyMHVuYSUyMHNlcmllJTIwZGUlMjBhcmNoaXZvcyUyMHF1ZSUyMGFjdCVDMyVCQWFuJTIwY29tbyUyMGNvbnRlbmVkb3IlMjBkZXNkZSUyMGVsJTIwcXVlJTIwc2UlMjBlamVjdXRhciVDMyVBMSUyMGxhJTIwbSVDMyVBMXF1aW5hJTIwdmlydHVhbCUyMGVuJTIwdW5hJTIwdmVudGFuYSUyMGRlJTIwbnVlc3RybyUyMG9yZGVuYWRvciUyMGNvbW8lMjBjdWFscXVpZXIlMjBvdHJvJTIwcHJvZ3JhbWElMjB5JTIwc2luJTIwZWwlMjBwZWxpZ3JvJTIwZGUlMjBxdWUlMjBuYWRhJTIwcXUlQzMlQTklMjBsZSUyMHN1Y2VkYSUyMGFjYWJlJTIwYWZlY3RhbmRvJTIwYSUyMG51ZXN0cmElMjBtJUMzJUExcXVpbmElMjByZWFsJTIwbGElMjBjdWFsJTIwZXN0JUMzJUExJTIwZWplY3V0JUMzJUExbmRvbGEuJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlMkMlMjJzZWxlY3Rpb25zJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyZTA4MGY2NDE3ZDdjNGU1ZGJiNmJjZjc0OWVkMzRlMmQlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJjOWY3OTFjM2U1MzY0NmYyYWQ4MTBlNmRhYzhmNjY0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmJkOTAyNzlmYzYwMDRiOWFhZDEzOWQ4ZDAyODQyMWU4JTIyJTdE">[![VM&#95;inside.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/DgdlmBK1pKJIC1gd-vm-inside.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/DgdlmBK1pKJIC1gd-vm-inside.png)</span>

# LXC LinuX Containers

### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q=">¿Qué es LXC?</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q=">[![lxc.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/EBfYjAC6SO49MaYr-lxc.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/EBfYjAC6SO49MaYr-lxc.png)</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q=">LXC o linuX Containers son contenedores aislados con su propia reserva de recursos y se realiza mediante entornos de virtualización. Los contenedores no emulan hardware, así como las máquinas virtuales sí. LXC es un sistema operativo dentro de nuestro sistema y a efectos prácticos se comporta como una máquina virtual, la emulación se ejecuta en el **kernel** de linux. Pero **LXC** proporciona un **contenedor** mínimo, así reduciendo el uso de recursos de nuestro sistema y aumentando la portabilidad gracias a que se pueden crear plantillas que se pueden ejecutar en cualquier contenedor.</span>

##### **Hay dos formas de crearlos**

- <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q=">Por terminal</span>
- <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q=">Por interfaz gráfica (solo algunos S.O la tienen ej. Proxmox) </span>

#### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q="> Terminal</span>

```bash
lxc-create -n MyCentOSContainer1 -t /usr/local/share/lxc/templates/lxc-centos/usr/local/share/lxc/templates/lxc-centos
```

#### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlMjJpZCUyMiUzQSUyMl9ydjdvbHd1OXo3ZWwlMjIlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMiVDMiVCRlF1JUMzJUE5JTIwZXMlMjBMWEMlM0YlMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzODk5NTNjZmE1MWE0NDM2OGQ5ZTExYTc2MWQ1MDkzNyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjU1MDMyNjE5YTllODQ4YjdhZTQwZDBmMWVkMmU2ZWE1JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNTg1MTA0ZjkwNWI4NGQxMGE5MDVhNWQ3MzdiYTk2M2UlMjIlN0Q="></span>

# Docker

### Docker

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkxhJTIwZnVuY2klQzMlQjNuJTIwcHJpbmNpcGFsJTIwZGUlMjBEb2NrZXIlMjBlcyUzQSUyMGRlc2Fycm9sbGFyJTJDJTIwZW52aWFyJTIweSUyMGVqZWN1dGFyJTIwY3VhbHF1aWVyJTIwYXBsaWNhY2klQzMlQjNuJTIwZW4lMjBjdWFscXVpZXIlMjBzaXN0ZW1hJTJDJTIwY29uc3RpdHV5JUMzJUE5bmRvc2UlMjBhcyVDMyVBRCUyMGNvbW8lMjB1bmElMjBhbHRlcm5hdGl2YSUyMGZsZXhpYmxlJTIweSUyMGNhcGF6JTIwZGUlMjBhaG9ycmFyJTIwcmVjdXJzb3MlMjBmcmVudGUlMjBhJTIwbGElMjBlbXVsYWNpJUMzJUIzbiUyMGRlJTIwY29tcG9uZW50ZXMlMjBkZSUyMGhhcmR3YXJlJTIwYmFzYWRhJTIwZW4lMjBtJUMzJUExcXVpbmFzJTIwdmlydHVhbGVzJTIwKFZNKS4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI2NTFiYjRhOGU3YjQ0MzE5ODdmYjRkOWI0NWY4NmE0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmY4YTU3MWExODVjMDRmZDE5NTk5OWFhNTdiMDVlMjlmJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNDZlZGFkMmRjYmU2NDgzMGI3NzJjNmE5ZTlkMWY1YTklMjIlN0Q=">La función principal de Docker es: desarrollar, enviar y ejecutar cualquier aplicación en cualquier sistema, constituyéndose así como una alternativa flexible y capaz de ahorrar recursos frente a la emulación de componentes de hardware basada en máquinas virtuales (VM).</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkxhJTIwZnVuY2klQzMlQjNuJTIwcHJpbmNpcGFsJTIwZGUlMjBEb2NrZXIlMjBlcyUzQSUyMGRlc2Fycm9sbGFyJTJDJTIwZW52aWFyJTIweSUyMGVqZWN1dGFyJTIwY3VhbHF1aWVyJTIwYXBsaWNhY2klQzMlQjNuJTIwZW4lMjBjdWFscXVpZXIlMjBzaXN0ZW1hJTJDJTIwY29uc3RpdHV5JUMzJUE5bmRvc2UlMjBhcyVDMyVBRCUyMGNvbW8lMjB1bmElMjBhbHRlcm5hdGl2YSUyMGZsZXhpYmxlJTIweSUyMGNhcGF6JTIwZGUlMjBhaG9ycmFyJTIwcmVjdXJzb3MlMjBmcmVudGUlMjBhJTIwbGElMjBlbXVsYWNpJUMzJUIzbiUyMGRlJTIwY29tcG9uZW50ZXMlMjBkZSUyMGhhcmR3YXJlJTIwYmFzYWRhJTIwZW4lMjBtJUMzJUExcXVpbmFzJTIwdmlydHVhbGVzJTIwKFZNKS4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI2NTFiYjRhOGU3YjQ0MzE5ODdmYjRkOWI0NWY4NmE0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmY4YTU3MWExODVjMDRmZDE5NTk5OWFhNTdiMDVlMjlmJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNDZlZGFkMmRjYmU2NDgzMGI3NzJjNmE5ZTlkMWY1YTklMjIlN0Q=">[![docker.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/kQVZlyvCYSoOEj72-docker.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/kQVZlyvCYSoOEj72-docker.png)</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkxhJTIwZnVuY2klQzMlQjNuJTIwcHJpbmNpcGFsJTIwZGUlMjBEb2NrZXIlMjBlcyUzQSUyMGRlc2Fycm9sbGFyJTJDJTIwZW52aWFyJTIweSUyMGVqZWN1dGFyJTIwY3VhbHF1aWVyJTIwYXBsaWNhY2klQzMlQjNuJTIwZW4lMjBjdWFscXVpZXIlMjBzaXN0ZW1hJTJDJTIwY29uc3RpdHV5JUMzJUE5bmRvc2UlMjBhcyVDMyVBRCUyMGNvbW8lMjB1bmElMjBhbHRlcm5hdGl2YSUyMGZsZXhpYmxlJTIweSUyMGNhcGF6JTIwZGUlMjBhaG9ycmFyJTIwcmVjdXJzb3MlMjBmcmVudGUlMjBhJTIwbGElMjBlbXVsYWNpJUMzJUIzbiUyMGRlJTIwY29tcG9uZW50ZXMlMjBkZSUyMGhhcmR3YXJlJTIwYmFzYWRhJTIwZW4lMjBtJUMzJUExcXVpbmFzJTIwdmlydHVhbGVzJTIwKFZNKS4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI2NTFiYjRhOGU3YjQ0MzE5ODdmYjRkOWI0NWY4NmE0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmY4YTU3MWExODVjMDRmZDE5NTk5OWFhNTdiMDVlMjlmJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNDZlZGFkMmRjYmU2NDgzMGI3NzJjNmE5ZTlkMWY1YTklMjIlN0Q=">Debido a que la virtualización de hardware tradicional se basa en iniciar diferentes sistemas operativos en el mismo sistema host (host), con la ayuda de Docker, gracias al llamado contenedor, las aplicaciones se ejecutan como procesos aislados en el mismo sistema. Por lo tanto, hablamos de virtualización basada en contenedores y, pues, también hablamos de virtualización a nivel de sistema operativo. Portainer App para automatización de Docker y para su uso más rápido y fácil gracias a su interfaz de usuario en web.</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkxhJTIwZnVuY2klQzMlQjNuJTIwcHJpbmNpcGFsJTIwZGUlMjBEb2NrZXIlMjBlcyUzQSUyMGRlc2Fycm9sbGFyJTJDJTIwZW52aWFyJTIweSUyMGVqZWN1dGFyJTIwY3VhbHF1aWVyJTIwYXBsaWNhY2klQzMlQjNuJTIwZW4lMjBjdWFscXVpZXIlMjBzaXN0ZW1hJTJDJTIwY29uc3RpdHV5JUMzJUE5bmRvc2UlMjBhcyVDMyVBRCUyMGNvbW8lMjB1bmElMjBhbHRlcm5hdGl2YSUyMGZsZXhpYmxlJTIweSUyMGNhcGF6JTIwZGUlMjBhaG9ycmFyJTIwcmVjdXJzb3MlMjBmcmVudGUlMjBhJTIwbGElMjBlbXVsYWNpJUMzJUIzbiUyMGRlJTIwY29tcG9uZW50ZXMlMjBkZSUyMGhhcmR3YXJlJTIwYmFzYWRhJTIwZW4lMjBtJUMzJUExcXVpbmFzJTIwdmlydHVhbGVzJTIwKFZNKS4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI2NTFiYjRhOGU3YjQ0MzE5ODdmYjRkOWI0NWY4NmE0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmY4YTU3MWExODVjMDRmZDE5NTk5OWFhNTdiMDVlMjlmJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNDZlZGFkMmRjYmU2NDgzMGI3NzJjNmE5ZTlkMWY1YTklMjIlN0Q=">[![docker&#95;diagrama.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/o1tKTko8CCt0aDY5-docker-diagrama.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/o1tKTko8CCt0aDY5-docker-diagrama.png)</span>

#### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkxhJTIwZnVuY2klQzMlQjNuJTIwcHJpbmNpcGFsJTIwZGUlMjBEb2NrZXIlMjBlcyUzQSUyMGRlc2Fycm9sbGFyJTJDJTIwZW52aWFyJTIweSUyMGVqZWN1dGFyJTIwY3VhbHF1aWVyJTIwYXBsaWNhY2klQzMlQjNuJTIwZW4lMjBjdWFscXVpZXIlMjBzaXN0ZW1hJTJDJTIwY29uc3RpdHV5JUMzJUE5bmRvc2UlMjBhcyVDMyVBRCUyMGNvbW8lMjB1bmElMjBhbHRlcm5hdGl2YSUyMGZsZXhpYmxlJTIweSUyMGNhcGF6JTIwZGUlMjBhaG9ycmFyJTIwcmVjdXJzb3MlMjBmcmVudGUlMjBhJTIwbGElMjBlbXVsYWNpJUMzJUIzbiUyMGRlJTIwY29tcG9uZW50ZXMlMjBkZSUyMGhhcmR3YXJlJTIwYmFzYWRhJTIwZW4lMjBtJUMzJUExcXVpbmFzJTIwdmlydHVhbGVzJTIwKFZNKS4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI2NTFiYjRhOGU3YjQ0MzE5ODdmYjRkOWI0NWY4NmE0MyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmY4YTU3MWExODVjMDRmZDE5NTk5OWFhNTdiMDVlMjlmJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNDZlZGFkMmRjYmU2NDgzMGI3NzJjNmE5ZTlkMWY1YTklMjIlN0Q=">Ejemplo de creación de contenedor Docker</span>

```bash
docker run -d -p 8000:8000 -p 9443:9443 --name portainer \
    --restart=always \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -v portainer_data:/data \
    portainer/portainer-ce:2.9.3
```

# Docker Compose

[![docker&#95;compose.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/ciIub3tlTM6H6Zvh-docker-compose.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/ciIub3tlTM6H6Zvh-docker-compose.png)

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkRvY2tlciUyMENvbXBvc2UlMjBlcyUyMHVuYSUyMHV0aWxpZGFkJTIwZGUlMjBEb2NrZXIlMjBxdWUlMjBub3MlMjBheXVkYSUyMGElMjBsYSUyMGhvcmElMjBkZSUyMGNyZWFyJTIwbXVsdGlwbGVzJTIwY29udGVuZWRvcmVzJTIwZG9ja2VyJTIwYWwlMjBtaXNtbyUyMHRpZW1wby4lMjBBJTIwZGlmZXJlbmNpYSUyMGRlJTIwZG9ja2VyJTIwc3RhbmRhcmQlMjBlc3RlJTIwbm8lMjBoYXklMjBxdWUlMjBjcmVhcmxvJTIwZGlyZWN0YW1lbnRlJTIwZW4lMjBsYSUyMHRlcm1pbmFsJTIwc2luJUMzJUIzJTIwcXVlJTIwc2UlMjBjcmVhJTIwdW4lMjBhcmNoaXZvJTIwLnltbCUyMHF1ZSUyMGVzJTIwbSVDMyVBMXMlMjBmYWNpbCUyMGRlJTIwc2VyJTIwbW9kaWZpY2FkbyUyMHklMjBjb25maWd1cmFkbyUyMHF1ZSUyMGVuJTIwbGElMjBwcm9waWElMjB0ZXJtaW5hbC4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJjY2YzNjg3MzBjNGE0MzM4OGRlZjU2NTY2ZjRlNjdhZCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmZkYTQzMmRhOTk1ZjQxZDA5MTQ0NzY4YWQ2OGRkYjA3JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyN2IwNTcyZDNjMDgwNGI2Y2FlYTVjYmExM2NlNTQxNWUlMjIlN0Q=">Docker Compose es una utilidad de Docker que nos ayuda a la hora de crear múltiples contenedores Docker al mismo tiempo. A diferencia de Docker Cli este no hay que crearlo directamente en la terminal, sino que se crea un archivo .yml que es más fácil de ser modificado y configurado que en la propia terminal. Una vez creado solo se tiene que ejecutar un comando por terminal que comprobará el archivo e instalara y configurara lo que le hemos descrito en el mismo.</span>

### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkNyZWFjY2klQzMlQjNuJTIwZGUlMjB3b3JkcHJlc3MlMjBwb3IlMjB0ZXJtaW5hbC4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI0MWIzMzFiMjk0ZTQ0YjQyOTNmMjUxZDE1ODQ2YzQwMCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjcwNDNhMjNiNTlmOTQ3M2JiNzQ4YzYxYjFmZDVjNjlhJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYmM4NzNmMzRlYjU1NGZlYWI4NzExNzUzZDlmNGM3MjYlMjIlN0Q=">Creación de WordPress por Docker Cli</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkNyZWFjY2klQzMlQjNuJTIwZGUlMjB3b3JkcHJlc3MlMjBwb3IlMjB0ZXJtaW5hbC4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI0MWIzMzFiMjk0ZTQ0YjQyOTNmMjUxZDE1ODQ2YzQwMCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjcwNDNhMjNiNTlmOTQ3M2JiNzQ4YzYxYjFmZDVjNjlhJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYmM4NzNmMzRlYjU1NGZlYWI4NzExNzUzZDlmNGM3MjYlMjIlN0Q=">Primero se crea el Docker de la base de datos.</span>

```bash
docker create \
  --name=mariadb \
  --net=lsio \
  -e PUID=1000 \
  -e PGID=1000 \
  -e MYSQL_ROOT_PASSWORD=mariadbpassword \
  -e TZ=Europe/London \
  -e MYSQL_DATABASE=WP_database \
  -e MYSQL_USER=WP_dbuser \
  -e MYSQL_PASSWORD=WP_dbpassword \
  -v /home/aptalca/appdata/mariadb:/config \
  --restart unless-stopped \
  lscr.io/linuxserver/mariadb
```

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlklMjBkZSUyMGxhJTIwbWlzbWElMjBmb3JtYSUyMHF1ZSUyMGxhJTIwYmFzZSUyMGRlJTIwZGF0b3MlMjB0ZW5kcmVtb3MlMjBxdWUlMjBjcmVhciUyMGVsJTIwY29udGVuZWRybyUyMGRvbmRlJTIwaXJhJTIwaW5zdGFsYWRvJTIwbGElMjBhcGxpY2FjaSVDMyVCM24lMjBkZSUyMHdvcmRwcmVzcy4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIxZGRkZDNiZDdhODM0ZjY2YmVkNjc5OGY1YmMwODA3ZiUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjEzOGY5NzMyODczZDQ4ZTc5MTViNDQ4NmIzYWMwOTI3JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYzVhMWM4ZDdjMTA3NDBiNDk5NjY4ZWU2MmQ2MzI3NzIlMjIlN0Q=">Y de la misma forma que la base de datos tendremos que crear el contenedor donde irá instalado la aplicación de WordPress.</span>

```bash
docker create \
  --name=swag \
  --cap-add=NET_ADMIN \
  --net=lsio \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/London \
  -e URL=linuxserver-test.com \
  -e SUBDOMAINS=wildcard \
  -e VALIDATION=dns \
  -e DNSPLUGIN=cloudflare \
  -p 443:443 \
  -p 80:80 \
  -v /home/aptalca/appdata/swag:/config \
  --restart unless-stopped \
  lscr.io/linuxserver/swag
```

<p class="callout info"><span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlklMjBkZSUyMGxhJTIwbWlzbWElMjBmb3JtYSUyMHF1ZSUyMGxhJTIwYmFzZSUyMGRlJTIwZGF0b3MlMjB0ZW5kcmVtb3MlMjBxdWUlMjBjcmVhciUyMGVsJTIwY29udGVuZWRybyUyMGRvbmRlJTIwaXJhJTIwaW5zdGFsYWRvJTIwbGElMjBhcGxpY2FjaSVDMyVCM24lMjBkZSUyMHdvcmRwcmVzcy4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIxZGRkZDNiZDdhODM0ZjY2YmVkNjc5OGY1YmMwODA3ZiUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjEzOGY5NzMyODczZDQ4ZTc5MTViNDQ4NmIzYWMwOTI3JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYzVhMWM4ZDdjMTA3NDBiNDk5NjY4ZWU2MmQ2MzI3NzIlMjIlN0Q=">Una vez creadas los dos contenedores los tendremos que poner en la misma red de docker para que se puedan comunicar. Y pos ultimo dentro del segundo contenedor creado tendermos que instalar Wordpress:</span></p>

```bash
wget https://wordpress.org/latest.tar.gz
tar xvf latest.tar.gz -C /home/aptalca/appdata/swag/www/
rm latest.tar.gz
```

### <span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJoZWFkaW5nLTIlMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkNyZWFkbyUyMGNvbiUyMGRvY2tlciUyMGNvbXBvc2UuJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlMkMlMjJzZWxlY3Rpb25zJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNjU4OGFiODE0M2M5NGM5YWEzNTIyZmJjYjU1ZmRhZTMlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIzNTg5M2RhZmRiNTA0YTE5OTc0NDgyZWIzNmZkYTRjZSUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmU5M2Q3ZjFiNjdhMTRjMTQ4MDhhMTIzZTgxMGM0MGVkJTIyJTdE">Creado con Docker Compose</span>

```yaml
---
version: "2.1"
services:
  mariadb:
    image: lscr.io/linuxserver/mariadb
    container_name: mariadb
    environment:
      - PUID=1000
      - PGID=1000
      - MYSQL_ROOT_PASSWORD=mariadbpassword
      - TZ=Europe/London
      - MYSQL_DATABASE=WP_database
      - MYSQL_USER=WP_dbuser
      - MYSQL_PASSWORD=WP_dbpassword
    volumes:
      - /home/aptalca/appdata/mariadb:/config
    restart: unless-stopped
  swag:
    image: lscr.io/linuxserver/swag
    container_name: swag
    cap_add:
      - NET_ADMIN
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
      - URL=linuxserver-test.com
      - SUBDOMAINS=wildcard
      - VALIDATION=dns
      - DNSPLUGIN=cloudflare
    volumes:
      - /home/aptalca/appdata/swag:/config
    ports:
      - 443:443
      - 80:80
    depends_on:
      - mariadb
    restart: unless-stopped
```

<p class="callout info"><span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMkElMjBkaWZlcmVuY2lhJTIwZGUlMjBEb2NrZXIlMjBDbGklMkMlMjBlbiUyMERvY2tlciUyMENvbXBvc2UlMjBzZSUyMHB1ZGUlMjBoYWNlciUyMHRvZG8lMjBlbiUyMGVsJTIwbWlzbW8lMjBhcmNoaXZvJTIweSUyMGRlc3B1ZXMlMjBlamVjdXRhcmxvJTIwZW4lMjB0ZXJtaW5hbCUyMGNvbiUzQSUyMiUyQyUyMm1hcmtzJTIyJTNBJTVCJTVEJTJDJTIyc2VsZWN0aW9ucyUyMiUzQSU1QiU1RCU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMmJhMDY0OTRiZTI1NjQ4NmM5MTJlNTdkYzVmMzgwZTU5JTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYjQzMDc0Zjk5YTc1NDE5MTk5NzJjOTQ1NmNjOWNiYzUlMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjIyM2MxOTg4MzI0NWY0ZWQ0OTlmOTcwMzJlYzlmYmYyMyUyMiU3RA==">A diferencia de Docker Cli, en Docker Compose se pude hacer todo en el mismo archivo y despues ejecutarlo en terminal </span></p>

```bash
docker-compose up -d
```

<p class="callout info"><span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlklMjB1bmElMjB2ZXolMjBlamVjdXRhZG8lMjBzb2xvJTIwdGllbmVzJTIwcXVlJTIwbW9kaWZpY2FyJTIwZWwlMjBhcmNoaXZvJTIweSUyMGVqZWN1dGFybG8lMjBkZSUyMG51ZXZvJTNBJTIyJTJDJTIybWFya3MlMjIlM0ElNUIlNUQlMkMlMjJzZWxlY3Rpb25zJTIyJTNBJTVCJTVEJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyNjA0ZWJiNjdhYTkwNGZjNjg1MGYwOTAyMGY4YjE5ZjElMjIlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjJiYTllMzE0NTMwNjk0NWY2YTBhNGE3ODExZWVlYTg0YyUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjQ2MTFkOTgzNTBkOTRmNWE4YzM4NjQwOWRhNTVjMjgxJTIyJTdE">Una vez el docker esta creado, si se modifica el archivo se tendra que crear los docker de nuevo y prar eso esta el siguiente comando</span></p>

```bash
docker-compose up -d --force-recreate
```

<p class="callout success"><span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlB1ZWRlJTIwc2VyJTIwY3JlYWRvJTIweSUyMGNvbmZpZ3VyYWRvJTIwZW4lMjB1biUyMGVkaXRvciUyMGRlJTIwdGV4dG8lMjB5JTIwZGVzcHVlcyUyMHRyYXNsYWRhcmxvJTIwYWwlMjBhcmNoaXZvJTIwLnltbCUyMGRlJTIwbnVlc3RybyUyMHNlcnZlci4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI3MDhiNjA1OTVkYjE0NDk2ODViOGNjOGRmYjI2Y2I0OCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjI1OGU1NDlhNWVmNTRkM2U4NDg3NjhiZjUxNmZjNjRiJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYThkZDcxOTY3MmM5NDliNGI4OGY3NDgyMTk1Njk4MTglMjIlN0Q=">Puede ser creado y configurado en un editor de texto y despues trasladarlo al archivo .yml de nuestro server.</span></p>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlB1ZWRlJTIwc2VyJTIwY3JlYWRvJTIweSUyMGNvbmZpZ3VyYWRvJTIwZW4lMjB1biUyMGVkaXRvciUyMGRlJTIwdGV4dG8lMjB5JTIwZGVzcHVlcyUyMHRyYXNsYWRhcmxvJTIwYWwlMjBhcmNoaXZvJTIwLnltbCUyMGRlJTIwbnVlc3RybyUyMHNlcnZlci4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI3MDhiNjA1OTVkYjE0NDk2ODViOGNjOGRmYjI2Y2I0OCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjI1OGU1NDlhNWVmNTRkM2U4NDg3NjhiZjUxNmZjNjRiJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYThkZDcxOTY3MmM5NDliNGI4OGY3NDgyMTk1Njk4MTglMjIlN0Q=">[![docker&#95;compose&#95;VSCode.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/CHDH8R5vUhlXYuCk-docker-compose-vscode.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/CHDH8R5vUhlXYuCk-docker-compose-vscode.png)</span>

<span data-slate-fragment="JTdCJTIyb2JqZWN0JTIyJTNBJTIyZG9jdW1lbnQlMjIlMkMlMjJkYXRhJTIyJTNBJTdCJTdEJTJDJTIybm9kZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJibG9jayUyMiUyQyUyMnR5cGUlMjIlM0ElMjJwYXJhZ3JhcGglMjIlMkMlMjJpc1ZvaWQlMjIlM0FmYWxzZSUyQyUyMmRhdGElMjIlM0ElN0IlN0QlMkMlMjJub2RlcyUyMiUzQSU1QiU3QiUyMm9iamVjdCUyMiUzQSUyMnRleHQlMjIlMkMlMjJsZWF2ZXMlMjIlM0ElNUIlN0IlMjJvYmplY3QlMjIlM0ElMjJsZWFmJTIyJTJDJTIydGV4dCUyMiUzQSUyMlB1ZWRlJTIwc2VyJTIwY3JlYWRvJTIweSUyMGNvbmZpZ3VyYWRvJTIwZW4lMjB1biUyMGVkaXRvciUyMGRlJTIwdGV4dG8lMjB5JTIwZGVzcHVlcyUyMHRyYXNsYWRhcmxvJTIwYWwlMjBhcmNoaXZvJTIwLnltbCUyMGRlJTIwbnVlc3RybyUyMHNlcnZlci4lMjIlMkMlMjJtYXJrcyUyMiUzQSU1QiU1RCUyQyUyMnNlbGVjdGlvbnMlMjIlM0ElNUIlNUQlN0QlNUQlMkMlMjJrZXklMjIlM0ElMjI3MDhiNjA1OTVkYjE0NDk2ODViOGNjOGRmYjI2Y2I0OCUyMiU3RCU1RCUyQyUyMmtleSUyMiUzQSUyMjI1OGU1NDlhNWVmNTRkM2U4NDg3NjhiZjUxNmZjNjRiJTIyJTdEJTVEJTJDJTIya2V5JTIyJTNBJTIyYThkZDcxOTY3MmM5NDliNGI4OGY3NDgyMTk1Njk4MTglMjIlN0Q=">[![Docker&#95;Compose&#95;terminal.png](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/scaled-1680-/DOqwWmxLthUmlVRX-docker-compose-terminal.png)](https://docs.ntechadmin.com/uploads/images/gallery/2022-10/DOqwWmxLthUmlVRX-docker-compose-terminal.png)</span>