You are on page 1of 11

UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS

1
ASIGNATURA: CLOUD COMPUTING

PRACTICA
CONFIGURAR ELASTIC CONTAINER REGISTRY (ECR) PARA DOCKER EN AWS Y
CREAR UN REPOSITORIO EN ECR PARA ALOJAR IMÁGENES DE DOCKER

Para realizar la práctica crear un repositorio y su imagen en Elastic Container Registry


debemos seguir los siguientes pasos:

1. CONFIGURAR UNA INSTANCIA DE UBUNTO EN EC2

Se tiene que realizar todos los pasos necesarios para instalar y configurar una instancia Ubuntu
en EC2, para lo cual se hizo todo el proceso de instalación en una sesión anterior, deberá
aplicar lo aprendido.

2. INSTALAR LA INTERFAZ DE LÍNEA DE COMANDOS DE AWS (AWS CLI) EN LINUX Y


CONFIGURAR CREDENCIALES DE SEGURIDAD

2.1. Configurar e instalar AWS CLI

Para descargar la aplicación de AWS CLI para Linux y Windows debemos acceder a la
siguiente dirección web: https://aws.amazon.com/es/cli/, para el caso de Linux se requiere
Python

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
2
ASIGNATURA: CLOUD COMPUTING

A continuación se presenta la configuración de 2 maneras:

Configuración 1:

1. Descargar python
Debemos descargar una versión Python 2.6.5 o superior.

$ sudo apt install python3.8


$ python3 --version

2. Instalar PIP (herramienta de gestión de paquetes para python)

$ sudo apt install python3-pip


$ pip3 install awscli

Configuración 2:

De acuerdo al tutorial de AWS recomienda instalar la última versión de AWS CLI actualmente
es la versión 2, procedemos de la siguiente manera:

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"


$ unzip awscliv2.zip
$ sudo ./aws/install

2.2. Configurar e instalar las credenciales de seguridad

Accedemos a la Amazon Web Service, ingresamos a mis credenciales de seguridad y claves


de acceso como indica en la siguiente figura:

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
3
ASIGNATURA: CLOUD COMPUTING

Hacemos clic en crear una clave de acceso para posteriormente realizar 2 pasos 1) copiar la ID
de acceso y pegar en AWS CLI y 2) copiar la clave de acceso secreta y pegar en AWS CLI, o
también podría descargar las claves. Es importante señalar solo mostrará por única vez la clave
de acceso secreta, por lo que se recomienda guardarla.

2.3. Configurar las credenciales de seguridad en AWS CLI

$ aws configure

AWS Access Key ID [None]: (Pegue aquí la clave de acceso)


AWS Secret Access Key [None]: (Pegue aqui la clave de acceso secreta)
Default region name [None]: us-east-2
Default output format [None]:

2.4. Verificar el funcionamiento de AWS CLI

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
4
ASIGNATURA: CLOUD COMPUTING

Mostrar las instancias que se encuentran en EC2

$ aws ec2 describe-instances

3. INSTALAR DOCKER

Aplicar Guía de cómo instalar y usar docker en ubuntu 20.04, se recomienda ejecutar solo el
primer paso.

4. CREAR UN ROL IAM (Identity And Access Management)

¿Qué son los roles de IAM?

Los roles de IAM son una forma segura de conceder permisos a entidades de confianza.
Entre los ejemplos de entidades se incluyen los siguientes:

 Usuario de IAM en otra cuenta


 El código de aplicación que se ejecuta en una instancia EC2 y que necesita realizar
acciones en los recursos de AWS
 Servicio de AWS que debe actuar sobre los recursos de la cuenta para proporcionar
sus características
 Usuarios de un directorio corporativo que utilizan la identidad federada con SAML
Los roles de IAM emiten claves válidas durante periodos breves, lo que los convierte en una
forma de acceso más segura.
Fuente: https://console.aws.amazon.com/iam/home#/roles

¿Cómo comienzo a usar IAM?

Para comenzar a utilizar IAM, deberá suscribirse como mínimo a uno de los servicios de AWS
que están integrados con IAM. Puede crear y administrar usuarios, grupos y permisos por
medio de las API de IAM, la CLI de AWS o la consola de IAM, que le ofrece una interfaz
interactiva basada en la web. También puede usar el editor visual para crear políticas.

Ingresar al Servicio IAM, hacer clic en roles y luego en crea rol como indica en la siguiente
imagen.

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
5
ASIGNATURA: CLOUD COMPUTING

Seleccionar servicios de AWS, Clic EC2, Clic on siguiente: permisos.

Ahora buscamos la política AmazonEC2ContainerRegistryFullAccess, seleccionar y clic en


seleccionar etiquetas.

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
6
ASIGNATURA: CLOUD COMPUTING

En este caso no se agrega ningún rol y clic en siguiente

Vamos crear un rol para ello debemos ponerle un nombre y hacer clic en el botón crear rol

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
7
ASIGNATURA: CLOUD COMPUTING

Podemos verificar en la lista de la imagen que se encuentra el rol que se creado con nombre
docker-ec2-ecr-rol

5. ASIGNAR ROL A UNA INSTANCIA EC2

Vaya a la consola de AWS, haga clic en servicios de EC2, seleccione la instancia EC2, elija la
configuración de la instancia. Haga clic en Attach / Replace IAM Role

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
8
ASIGNATURA: CLOUD COMPUTING

Seleccionar el nuevo rol configurado en IAM

Después de realizar todo el proceso debería mostrar el siguiente mensaje:

6. CREAR REPOSITORIO E IMAGEN MEDIANTE LOS COMMANDOS DE CLI EN AWS ECR

Ingresamos a la Categoría Contenedores y hacer clic en el servicio Elastic Container Registry


(Registro de contenedores elasticos).

Posteriormente creamos un repositorio tal como muestra la siguiente imagen:

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
9
ASIGNATURA: CLOUD COMPUTING

Luego debe poner un nombre al repositorio y dale clic en el botón crear repositorio

A continuación ya se tiene el repositorio creado, ahora debe seleccionar el botón view push
comando

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
10
ASIGNATURA: CLOUD COMPUTING

Mostrará la siguiente imagen

Ahora debemos realizar que nos indica en Push commands

$ sudo su
# aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin
942738202946.dkr.ecr.us-east-2.amazonaws.com

Descargamos la carpeta 1.qoutes-generator de la cuenta Github de


https://github.com/jcnavarro-vega/cloud-computing

# git clone https://github.com/jcnavarro-vega/cloud-computing.git

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe


UNIVERSIDAD NACIONAL AMAZÓNICA DE MADRE DE DIOS
11
ASIGNATURA: CLOUD COMPUTING

Debe descomprimir el archivo, luego hacer los procedimientos necesarios hasta obtener un
directorio denominado cloud computing con los archivos descargados y uno de ellos es el
archivo Dockerfile, importante para seguir con el 2do paso de Push commands, luego copiar
y pegar.

# docker build -t unamad-cc .


# docker tag unamad-cc:latest 942738202946.dkr.ecr.us-east-2.amazonaws.com/unamad-cc:latest

# docker push 942738202946.dkr.ecr.us-east-2.amazonaws.com/unamad-cc:latest

Finalmente obtenemos la imagen como se muestra a continuación:

7. WEBGRAFIA

[1] https://www.cidevops.com/2020/05/how-to-setup-elastic-container-registry.html
[2] https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2-linux.html
[3] https://aws.amazon.com/es/iam/faqs/

Docente: Dr. Ing. José Carlos Navarro Vega jcnavarro@unamad.edu.pe

You might also like