1。docker-compose.yml
services:
air-web:
build: .
ports:
- "1027:1027"
volumes:
- .:/code
depends_on:
- air-redis
air-redis:
image: "redis:alpine"
2. Dockerfile
FROM python:3.12-slim-bookworm #设置工作目录 WORKDIR /code #将当前目录内容拷贝到容器中的code目录 COPY . /code #安装依赖 RUN pip install --no-cache-dir -r requirements.txt #暴露端口 EXPOSE 1027 #运行应用 CMD ["python","app.py"]
3.requirements.txt
flask redis faker
4.app.py
from flask import Flask
from redis import Redis
from faker import Faker
app = Flask(__name__)
redis = Redis(host='redis', port=6379)
@app.route('/')
def home():
count = redis.incr('hits')
faker = Faker(locale='zh_CN')
return 'Hi {},我被点击了:{}次'.format(faker.name(), count)
if (__name__ == '__main__'):
app.run(host="0.0.0.0", port=1027, debug=True)
5.命令:
docker compose up 初次运行,修改Dockerfile后用:
docker compose up --build -d 强制后台及重新编译
docker compose ps 查看当前状态
docker compose down 关闭当前的项目,如果修改过services name后,用
docker compose down -p projname 强制关闭之前的项目



















