Docker Compose快速搭建TensorFlow服务环境
在微服务架构中,TensorFlow Serving的容器化部署是实现模型快速迭代和弹性伸缩的关键。本文将通过Docker Compose快速构建一个完整的TensorFlow服务环境。
核心配置文件
首先创建docker-compose.yml文件:
version: '3.8'
services:
tensorflow-serving:
image: tensorflow/serving:latest-gpu
container_name: tf-serving
ports:
- "8500:8500" # gRPC端口
- "8501:8501" # HTTP端口
volumes:
- ./models:/models
- ./config:/config
environment:
- MODEL_NAME=mnist_model
- MODEL_BASE_PATH=/models
deploy:
resources:
reservations:
memory: 2G
limits:
memory: 4G
restart: unless-stopped
nginx:
image: nginx:alpine
container_name: tf-nginx
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
depends_on:
- tensorflow-serving
restart: unless-stopped
负载均衡配置
在nginx.conf中配置负载均衡:
upstream tensorflow_servers {
server tf-serving:8500 weight=1;
server tf-serving:8500 weight=1;
}
server {
listen 80;
location / {
proxy_pass http://tensorflow_servers;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
部署步骤
- 创建模型目录:
mkdir -p models/mnist_model/1 - 将模型文件放入版本目录
- 启动服务:
docker-compose up -d - 验证服务:
curl http://localhost:8501/v1/models/mnist_model
此方案实现了容器化部署与负载均衡的快速配置,适用于生产环境的TensorFlow服务化。

讨论