Docker.pdf


Vista previa del archivo PDF docker.pdf


Página 1...84 85 86878891

Vista previa de texto


--no-cache=false
--pull=false
the image
-q, --quiet=false
the containers
--rm=true
successful build
-t, --tag=
the image
--ulimit=[]

Do not use cache when building the image
Always attempt to pull a newer version of
Suppress the verbose output generated by
Remove intermediate containers after a
Repository name (and optionally a tag) for
Ulimit options

Empaquetando una aplicación Flask en un
contenedor
Problema
Tenemos una aplicación web buildeada en Flask corriendo en nuestro Ubuntu
14.04 y queremos correrla en un contenedor.
Solución
Como un ejemplo, vamos a usar una simple aplicacion Flask Hello World
Para instalar el modulo Flask simplemente corremos este comando
$ pip install Flask
#!/usr/bin/env python
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run(host='0.0.0.0', port=5000)

Para tener esta aplicación corriendo en un contenedor Docker, necesitamos
escribir un Dockerfile que instale las dependencias de este framework
(comando RUN), y poder correr nuesta app. También necesitamos exponer el
puerto del contenedor (comando EXPOSE). También necesitamos mover nuestra
aplicación al Filesystem del contenedor (comando ADD). El Dockerfile quedaría de
la siguiente forma:
FROM ubuntu:14.04
# Actualizamos repositorios e instalamos dependencias.
RUN apt-get update
RUN apt-get install -y python python-pip
RUN apt clean all
RUN pip install flask