小编Jos*_*eph的帖子

Docker获取用户真实ip

我有一个在 docker 容器内运行的 Flask 网站。我想向他们显示用户的 ip 地址,但是它当前显示的是 docker 容器的 IP 地址,可能是因为它是从 docker 转发的。我使用 Flask 的requests模块检索 IP 地址。

它不应该有什么不同,但我正在使用 docker-compose。

version: '2'
services:
  web:
    build: .
    ports:
     - "5000:5000"
    volumes:
     - .:/code
  redis:
    image: "redis:alpine"
Run Code Online (Sandbox Code Playgroud)

这是使用 Flask 的网站代码:

from flask import Flask, request
from redis import Redis

app = Flask(__name__)
redis = Redis(host='redis', port=6379)

@app.route('/')
def hello():
    count = redis.incr('hits')
    return 'Your IP is: {0}. I have been visited {1} times and \'foo\' is set to {2}.\n'.format(request.remote_addr,count, redis.get('foo').decode('utf-8'))

if …
Run Code Online (Sandbox Code Playgroud)

python flask docker

1
推荐指数
1
解决办法
4161
查看次数

标签 统计

docker ×1

flask ×1

python ×1