Skip to content
This repository has been archived by the owner on Aug 19, 2019. It is now read-only.

Tutoriales Resueltos Daniel Camarena #30

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
67 changes: 35 additions & 32 deletions 0-docker.Rmd
Original file line number Diff line number Diff line change
@@ -1,35 +1,37 @@
---
title: "Docker"
author: "Adolfo De Unánue T."
author: "Adolfo De Un�nue T."
date: "14/01/2016"
output: html_document
output:
html_document: default
pdf_document: default
---

# Docker

## ¿Qué es docker?
## �Qu� es docker?

Es una plataforma de virtualización además de un conjunto de comandos para establecer *workflows* de trabajo que permitan crear, instalar, compartir etc, aplicaciones.
Es una plataforma de virtualizaci�n adem�s de un conjunto de comandos para establecer *workflows* de trabajo que permitan crear, instalar, compartir etc, aplicaciones.

**Docker** está compuesto de dos partes un *daemon* o un servidor y un *cliente*, el comando `docker`.
**Docker** est� compuesto de dos partes un *daemon* o un servidor y un *cliente*, el comando `docker`.

## Instalación
## Instalaci�n

- [Mac OS X](https://docs.docker.com/mac/step_one/)
- [Ubuntu](https://docs.docker.com/linux/step_one/)
- [MS Windows](https://docs.docker.com/windows/step_one/)

## Imágen y contenedores
## Im�gen y contenedores

Una **imagen** es una especie de cascarón o plantilla no modificable.
Una **imagen** es una especie de cascar�n o plantilla no modificable.

> **Ejemplo**
> Ejemplos de imágenes son `ubuntu` y la imagen de la clase con la que trabajaremos (`nanounanue/docker-ds`).
> Ejemplos de im�genes son `ubuntu` y la imagen de la clase con la que trabajaremos (`nanounanue/docker-ds`).

Un **contenedor** es creado a partir de una *imagen*. Los contenedores es aquello con lo que vas a interactuar. Pueden ser ejecutados, iniciados, detenidos, movidos, borrados, etc. Cada contenedor es un ambiente aislado. Aunque pueden ser [conectados entre ](http://docs.docker.com/userguide/dockerlinks/).
Un **contenedor** es creado a partir de una *imagen*. Los contenedores es aquello con lo que vas a interactuar. Pueden ser ejecutados, iniciados, detenidos, movidos, borrados, etc. Cada contenedor es un ambiente aislado. Aunque pueden ser [conectados entre s�](http://docs.docker.com/userguide/dockerlinks/).


Para ver qué imágenes hay en tu computadora:
Para ver qu� im�genes hay en tu computadora:

```
docker images
Expand All @@ -38,16 +40,16 @@ docker images

## Ejercicio

> **NOTA:** Si no tienen instalado `docker` por favor júntense con un compañero y háganlo luego en su casa.
> **NOTA:** Si no tienen instalado `docker` por favor j�ntense con un compa�ero y h�ganlo luego en su casa.

> **NOTA:** Si están en `ubuntu` y no configuraron su usuario como miembros del grupo `docker` agreguen `sudo` al principio de cada comando
> **NOTA:** Si est�n en `ubuntu` y no configuraron su usuario como miembros del grupo `docker` agreguen `sudo` al principio de cada comando

> **NOTA** Al final de las instrucciones de instalación en ubuntu, viene como eliminar la molestia de teclear `sudo` antes de todos los comandos.
> **NOTA** Al final de las instrucciones de instalaci�n en ubuntu, viene como eliminar la molestia de teclear `sudo` antes de todos los comandos.


- En su computadora, abran una terminal
- Verifiquen que el cliente `docker` esté instalado tecleando `docker`
- Verifiquen que el *daemon* esté corriendo con `docker run hello-world`, se debería de mostrar algo parecido a lo siguiente:
- Verifiquen que el cliente `docker` est� instalado tecleando `docker`
- Verifiquen que el *daemon* est� corriendo con `docker run hello-world`, se deber�a de mostrar algo parecido a lo siguiente:

```
docker run hello-world
Expand Down Expand Up @@ -86,9 +88,9 @@ For more examples and ideas, visit:
docker pull ubuntu:latest
```

- (Si la red está imposible, pidan el `USB stick` y ejecuten `docker load < /home/ubuntu-latest.tar`)
- (Si la red est� imposible, pidan el `USB stick` y ejecuten `docker load < /home/ubuntu-latest.tar`)

- Verifiquen que la imagen esté en su computadora
- Verifiquen que la imagen est� en su computadora

```
docker images
Expand All @@ -101,19 +103,19 @@ docker images
docker run -i -t ubuntu /bin/bash
```

(Aquí podemos hacer lo que se pide en las siguientes secciones de este *lecture*)
(Aqu� podemos hacer lo que se pide en las siguientes secciones de este *lecture*)


Para salir de este contendor tecleen `exit`.

- Para verificar que el contenedor está ahí:
- Para verificar que el contenedor est� ah�:

```
docker ps -a
```


**Nota** Si estás en MacOS ó Windows, apunta la dirección IP en la cual está corriendo `boot2docker`:
**Nota** Si est�s en MacOS Windows, apunta la direcci�n IP en la cual est� corriendo `boot2docker`:

```
boot2docker ip
Expand All @@ -122,7 +124,7 @@ boot2docker ip



## ¿Y la imagen de la clase?
## Y la imagen de la clase?

Descargarla

Expand All @@ -141,9 +143,9 @@ El `path_a_carpeta` se refiere a la salida del comando `pwd` en tu carpeta donde
En MS Windows regularmente es algo como `/c/Users/<Mi nombre de usuario en mi compu>/proyectos` y en MacOS es `/Users/<Minombre de usuario/proyectos`.


Podemos probar que está ejecutándose `RStudio`:
Podemos probar que est� ejecut�ndose `RStudio`:

Abran en el navegador la página `http://0.0.0.0:8787` (Si estás en GNU/Linux) o `http://192.168.59.103:8787` (quizá sea esta, verifica el paso del `boot2docker ip`), deberían de ver la entrada de RStudio.
Abran en el navegador la p�gina `http://0.0.0.0:8787` (Si est�s en GNU/Linux) o `http://192.168.59.103:8787` (quiz� sea esta, verifica el paso del `boot2docker ip`), deber�an de ver la entrada de RStudio.


Las credenciales son:
Expand All @@ -152,37 +154,37 @@ Las credenciales son:
- password: `itam`


Si llegaron hasta acá ¡Felicidades! No sufrirán más de lo necesario este curso.
Si llegaron hasta ac� �Felicidades! No sufrir�n m�s de lo necesario este curso.

Para salir de `docker` usen `Ctrl-C`.


## ¿Y la próxima vez?
## Y la pr�xima vez?

- La siguiente vez que quieras ejecutar `docker` usa el siguiente comando:

```
docker start stoic_hopper # Esto funciona si ejecutaste la versión de demonio
docker start stoic_hopper # Esto funciona si ejecutaste la versi�n de demonio
```

ó

```
docker start -a -i stoic_hopper # Esto funciona si ejecutaste la versión de interactiva
docker start -a -i stoic_hopper # Esto funciona si ejecutaste la versi�n de interactiva
```

donde debes de cambiar `stoic_hopper` por el nombre del contenedor (la última columna de `docker ps -a`).
donde debes de cambiar `stoic_hopper` por el nombre del contenedor (la �ltima columna de `docker ps -a`).


## Es posible también...
## Es posible tambi�n...

Lanzar una terminal de `R` sin usar Rstudio

```
docker run -it --user itam --name r-console -v path_a_carpeta:/home/itam/proyectos nanounanue/docker-ds /usr/bin/R
```

Lanzar la terminal de `python` con las librerías de cómputo científico:
Lanzar la terminal de `python` con las librer�as de c�mputo cient�fico:

```
docker run -it --user itam --name ipython-console -v path_a_carpeta:/home/itam/proyectos nanounanue/docker-ds ipython
Expand All @@ -199,3 +201,4 @@ docker run -it --user itam --name commandline -v path_a_carpeta:/home/itam/proy
## Liga de ayuda

Pueden ver [esto](https://github.com/wsargent/docker-cheat-sheet) si tienen dudas

285 changes: 285 additions & 0 deletions 0-docker.html

Large diffs are not rendered by default.

Loading