网页计数器
BioNote 2022-08-08
docker
web programming
# 参考来源
# 前言
从网上看到一个有意思的例子,使用flask和redis做一个访问计数器,并用到了docker相关知识。
# 主程序
新建文件夹,在该目录中编写 app.py 文件
from flask import Flask
from redis import Redis
app = Flask(__name__)
redis = Redis(host='redis', port=6379)
@app.route('/')
def hello():
count = redis.incr('hits')
return 'Hello World! 该页面已被访问 {} 次。\n'.format(count)
if __name__ == "__main__":
app.run(host="0.0.0.0", debug=True)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# Dockerfile
FROM python:3.6-alpine
ADD . /code
WORKDIR /code
RUN pip install -i https://pypi.doubanio.com/simple/ redis flask
CMD ["python", "app.py"]
1
2
3
4
5
2
3
4
5
# docker-compose
编写 docker-compose.yml 文件,这个是 Compose 使用的主模板文件。
version: '3'
services:
web:
build: .
ports:
- "5000:5000"
redis:
image: "redis:alpine"
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 运行项目
docker-compose up
1