meta data de esta página
Diferencias
Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| virtualizacion:docker [2019/11/21 11:09] – [Instalación en Windows] lc | virtualizacion:docker [2023/01/18 13:11] (actual) – editor externo 127.0.0.1 | ||
|---|---|---|---|
| Línea 29: | Línea 29: | ||
| * Dockerfile-> | * Dockerfile-> | ||
| * contenedor -> es el resultado de ejecutar una imágen(instancia), | * contenedor -> es el resultado de ejecutar una imágen(instancia), | ||
| - | ==== Instalación en Centos 7 ==== | ||
| - | Instalamos primero los siguientes paquetes necesarios < | ||
| - | < | ||
| - | Tambien podemos utilizar el script de instalación | ||
| + | === Source === | ||
| + | Cuando tenemos varios entornos de docker y queremos gestionarlos desde una misma máquina podemos definir ficheros con las variables de entorno y usar el comando source para cargarlas con el comando | ||
| + | < | ||
| - | Si queremos ponerlo como servicio | + | Un ejemplo de ficheros con variables sería : |
| + | <file> | ||
| + | export DOCKER_TLS_VERIFY=1 | ||
| + | export DOCKER_CERT_PATH=/home/ | ||
| + | export DOCKER_HOST=tcp:// | ||
| + | </file> | ||
| - | Para que docker funciones hay que crear un grupo y darle permisos sobre / | ||
| - | < | + | === Proxy === |
| - | sudo chown root:docker | + | Para que docker haga uso de un proxy debemos de crear/ |
| + | < | ||
| + | { | ||
| + | " | ||
| + | { | ||
| + | " | ||
| + | { | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | } | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | Otra opción sería usar variables de entorno al llamar a docker, por ejemplo | ||
| + | < | ||
| - | Añadimos nuestro usuario al grupo docker | + | == Proxy en Centos 7 == |
| - | <sxh bash> | + | Para que docker usara el proxy con Centos 7 |
| - | ==== Instalación | + | Creamos la arpeta para configurar el servicio de docker a través de systemd. |
| - | Para instalar la últimar versión, ya que está en continuo desarrollo | + | < |
| - | < | + | |
| - | Si queremos instalarlo desde los repositorios oficiales | + | Creamos el fichero de configuración del servicio |
| - | <sxh>sudo apt-get install | + | Añadimos a dicho fichero < |
| + | [Service] | ||
| + | Environment=" | ||
| + | </ | ||
| - | <note>Vagrant no es necesario, pero me permite gestionar y configurar mis contenedores, | + | Recargamos systemctl para que tome los cambios |
| - | ==== Instalación en Windows ==== | + | <sxh>sudo systemctl daemon-reload</sxh> |
| - | Para la instalación en windows necesitamos: | + | |
| - | | + | |
| - | - descargar e instalar docker toolbox (www.docker.com/ | + | |
| - | < | + | |
| - | === Descargar y ejecutar una imagen utilizando vagrant=== | + | Verificamos |
| - | Para descargar una imagen, en nuestro caso de ubuntu | + | <sxh> |
| - | creamos una carpeta < | + | |
| - | < | + | |
| - | vagrant init ubuntu/ | + | |
| - | < | + | |
| - | <code> | + | |
| - | sudo apt-get remove vagrant | + | |
| - | wget https:// | + | |
| - | sudo dpkg -i vagrant_1.7.4_x86_64.deb | + | |
| - | </ | + | |
| + | Reiniciamos el servicio | ||
| + | < | ||
| + | * https:// | ||
| + | |||
| - | ===== Comandos básicos ===== | ||
| - | === Comandos de información === | ||
| - | < | ||
| - | < | ||
| - | ==== Gestionar imágenes ==== | ||
| - | === Buscar una imagen === | ||
| - | < | ||
| - | === Listar las imágenes que tenemos descargadas === | ||
| - | < | ||
| - | |||
| - | < | ||
| - | |||
| - | |||
| - | |||
| - | ==== Gestionar Contenedores ==== | ||
| - | === Instalar una imagen de Kali Linux === | ||
| - | < | ||
| - | |||
| - | === Arrancar un Contendor === | ||
| - | < | ||
| - | < | ||
| - | < | ||
| - | |||
| - | === Ver los contenedores disponibles === | ||
| - | < | ||
| - | |||
| - | === Acceder a un contenedor === | ||
| - | Para acceder al contenedor, además de crearlo, se puede hacer de dos maneras. Una es haciendo referencia al IMAGE ID y otra al repositorio (REPOSITORY) y la etiqueta (TAG). | ||
| - | < | ||
| - | |||
| - | O también: | ||
| - | < | ||
| - | |||
| - | === Etiquetar === | ||
| - | También podemos poner una etiqueta a nuestros contenedores, | ||
| - | Para poner una etiqueta | ||
| - | < | ||
| - | |||
| - | Para llamar a dicho contenedor por la etiqueta, hacemos lo mismo que cuando lo llamamos por el id pero poniendo ahora la etiqueta | ||
| - | < | ||
| - | === Iniciar contenedor ==== | ||
| - | < | ||
| - | Con estos comandos arrancamos el contenedor pero no nos conectamos al mismo. Si queremos acceder ejecutamos < | ||
| - | === Parar contenedor=== | ||
| - | Para parar un contenedor < | ||
| - | |||
| - | === Salir === | ||
| - | Escribiendo **exit** en nuestro contenedor, o Pulsando CTRL+D salimos del mismo pero **parando la ejecución del mismo**. | ||
| - | Si queremos salir del contenedor pero que se siga ejecutando debemos presionar CTRL, después P y luego Q | ||
| - | === Guardar Contenedor === | ||
| - | < | ||
| - | === Borrar Contenedor === | ||
| - | < | ||
| - | |||
| - | === Copiar desde un contenedor === | ||
| - | Para copiar un fichero desde un contenedor a nuestra máquina hacemos | ||
| - | < | ||
| - | |||
| - | También podemos hacerlo a la inversa. Desde la máquina local al contenedor | ||
| - | |||
| - | === Ejecutar comando === | ||
| - | Podemos ejecutar un comando dentro de un contenedor con | ||
| - | < | ||
| - | |||
| - | Por ejemplo para iniciar un shell intereactivo | ||
| - | < | ||
| - | |||
| - | === logs === | ||
| - | Para ver los logs que está generando un contenedor, ejecutaríamos el comando < | ||
| - | |||
| - | === Estadísticas de uso === | ||
| - | con el comando stats obtenemos estádisticas de uso y consumo de nuestro contenedor | ||
| - | < | ||
| - | |||
| - | === Borrar contenedores sin uso === | ||
| - | con el comando < | ||
| - | * los contenedores que no se usan | ||
| - | * los volúmenes que no se usan | ||
| - | * las imágenes que no se estan usando | ||
| - | * las redes que no se estan usando | ||
| - | < | ||
| - | |||
| - | === Source === | ||
| - | Cuando tenemos varios entornos de docker y queremos gestionarlos desde una misma máquina podemos definir ficheros con las variables de entorno y usar el comando source para cargarlas con el comando | ||
| - | < | ||
| - | |||
| - | Un ejemplo de ficheros con variables sería : | ||
| - | < | ||
| - | export DOCKER_TLS_VERIFY=1 | ||
| - | export DOCKER_CERT_PATH=/ | ||
| - | export DOCKER_HOST=tcp:// | ||
| - | </ | ||
| ==== Recomendaciones de seguridad | ==== Recomendaciones de seguridad | ||
| === Bastionado === | === Bastionado === | ||
| Línea 180: | Línea 99: | ||
| * https:// | * https:// | ||
| ==== Referencias ==== | ==== Referencias ==== | ||
| + | * https:// | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| Línea 193: | Línea 113: | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||