一個flask-redis的案例


多容器復雜應用的部署:

Flask+redis,   flask的container訪問redis的container

cat app.py

from flask import Flask
from redis import Redis
import os
import socket

app = Flask(__name__)
redis = Redis(host=os.environ.get('REDIS_HOST', '127.0.0.1'), port=6379)

@app.route('/')
def hello():
    redis.incr('hits')
    return 'Hello Container World! I have been seen %s times and my hostname is %s.\n' % (redis.get('hits'),socket.gethostname())

if __name__ == "__main__":

    app.run(host="0.0.0.0", port=5000, debug=True)

cat Dockerfile

FROM python:2.7
LABEL maintaner="lin@gmail.com"
COPY . /app
WORKDIR /app
RUN pip install flask redis
EXPOSE 5000
CMD [ "python", "app.py" ]

1.創建redis的container:

docker run -d --name redis redis

 

2. dokcer build -t lin/flask-redis .

 

3.創建container

docker run -d -p 5000:5000 --link redis --name flask-redis -e REDIS_HOST=redis lin/flask-redis                    #和上面源碼的相對應

 

4.進入上面的container,並執行env看一下:

docker exec -it flask-redis /bin/bash 

env                         #環境變量

ping redis      #在容器里可以ping redis

 

5.在主機訪問curl 127.0.0.1:5000。可以訪問到

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM