├── Dockerfile ├── README ├── _config.yml ├── app.py ├── docker-compose.yml └── requirements.txt /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:2.7-slim 2 | WORKDIR /app 3 | COPY . /app 4 | RUN pip install -r requirements.txt 5 | EXPOSE 80 6 | ENV NOM coca 7 | CMD ["python", "app.py"] 8 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | # apprendre-docker 2 | Fichiers utilisés pour les tutoriaux 3 | (https://www.youtube.com/watch?v=SXB6KJ4u5vg&list=PL8SZiccjllt1jz9DsD4MPYbbiGOR_FYHu) 4 | -------------------------------------------------------------------------------- /_config.yml: -------------------------------------------------------------------------------- 1 | theme: jekyll-theme-cayman -------------------------------------------------------------------------------- /app.py: -------------------------------------------------------------------------------- 1 | from flask import Flask 2 | from redis import Redis, RedisError 3 | import os 4 | import socket 5 | 6 | # Connect to Redis 7 | redis = Redis(host="redis", db=0, socket_connect_timeout=2, socket_timeout=2) 8 | 9 | app = Flask(__name__) 10 | 11 | @app.route("/") 12 | def hello(): 13 | try: 14 | visites = redis.incr("compteur") 15 | except RedisError: 16 | visites = "Erreur de connection Redis, compteur desactive" 17 | 18 | html = "
Abonne toi!
" 22 | return html.format(nom=os.getenv("NOM", "youtube"), hostname=socket.gethostname(), visites=visites) 23 | 24 | if __name__ == "__main__": 25 | app.run(host='0.0.0.0', port=80) 26 | -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: "3" 2 | services: 3 | monapp: 4 | build: . 5 | image: monimage 6 | depends_on: 7 | - redis 8 | ports: 9 | - "80:80" 10 | networks: 11 | - monreseau 12 | environment: 13 | - NOM=les amis 14 | redis: 15 | image: redis 16 | networks: 17 | - monreseau 18 | 19 | networks: 20 | monreseau: 21 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | Flask 2 | Redis 3 | 4 | --------------------------------------------------------------------------------