Docker: Criando a Docker Image com o Python e Flask: Difference between revisions
(Criou a página com " <nowiki> echo 'from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "hello world!" if __name__ == "__main__": app.run(host="0.0.0.0...") |
No edit summary |
||
Line 1: | Line 1: | ||
Neste exemplo vou executar uma aplicação python em um container python. | |||
=Procedimento= | |||
=== Criando a aplicação app.py === | |||
Crie a nossa aplicação '''app.py''', usando o seguinte conteúdo: | |||
<nowiki> | <nowiki> | ||
from flask import Flask | |||
app = Flask(__name__) | app = Flask(__name__) | ||
Line 10: | Line 17: | ||
if __name__ == "__main__": | if __name__ == "__main__": | ||
app.run(host="0.0.0.0") | app.run(host="0.0.0.0") | ||
</nowiki> | </nowiki> | ||
=== Criando a docker image === | |||
Crie um arquivo Dockerfile, usando o seguinte conteúdo: | |||
<nowiki> | <nowiki> | ||
Line 21: | Line 30: | ||
CMD ["python","app.py"] | CMD ["python","app.py"] | ||
</nowiki> | </nowiki> | ||
=== Gerando o Container === | |||
docker image build -t python-hello-world . | docker image build -t python-hello-world . | ||
=== Executando o Container === | |||
docker run -p 5001:5000 -d python-hello-world | docker run -p 5001:5000 -d python-hello-world | ||
<nowiki>http://localhost:5001</nowiki> | Anote o '''container id''' gerado para ser usando nos comandos abaixo. | ||
Para verificar o resultado, acesse a url '''<nowiki>http://localhost:5001</nowiki>''' | |||
=== Verificando os logs de acesso no container === | |||
docker container logs [container id] | |||
=== Enviando o container para o DockerHub === | |||
Você vai precisar de ter um docker id para enviar images no Docker Hub, acesso o site https://hub.docker.com/ e crie o seu. | |||
Logando no Docker Hub através comando docker | |||
docker login | |||
Faça a tag do container | |||
docker tag python-hello-world [dockerhub username]/python-hello-world | |||
no meu caso | |||
''docker tag python-hello-world ebasso/python-hello-world'' | |||
docker | Enviando a imagem para o docker hub | ||
docker | docker push ebasso/python-hello-world | ||
= Ver também = | |||
* [[Docker: Trabalhando com Containers]] | |||
* [[DevOps| Artigos sobre DevOps]] | |||
* [[Cloud| Artigos sobre Cloud]] | |||
[[Category:Docker]] | |||
[[Category:DevOps]] | |||
[[Category:Cloud]] | |||
[[Category:Tecnologias]] |
Latest revision as of 23:50, 26 September 2018
Neste exemplo vou executar uma aplicação python em um container python.
Procedimento
Criando a aplicação app.py
Crie a nossa aplicação app.py, usando o seguinte conteúdo:
from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "hello world!" if __name__ == "__main__": app.run(host="0.0.0.0")
Criando a docker image
Crie um arquivo Dockerfile, usando o seguinte conteúdo:
FROM python:3.6.1-alpine RUN pip install flask COPY app.py /app.py CMD ["python","app.py"]
Gerando o Container
docker image build -t python-hello-world .
Executando o Container
docker run -p 5001:5000 -d python-hello-world
Anote o container id gerado para ser usando nos comandos abaixo.
Para verificar o resultado, acesse a url http://localhost:5001
Verificando os logs de acesso no container
docker container logs [container id]
Enviando o container para o DockerHub
Você vai precisar de ter um docker id para enviar images no Docker Hub, acesso o site https://hub.docker.com/ e crie o seu.
Logando no Docker Hub através comando docker
docker login
Faça a tag do container
docker tag python-hello-world [dockerhub username]/python-hello-world
no meu caso
docker tag python-hello-world ebasso/python-hello-world
Enviando a imagem para o docker hub
docker push ebasso/python-hello-world