我创建了两个应用程序“myapi”和“minombre”,其中“minombre”将向“myapi”发出一个简单的 GET 请求,并将它们放入两个单独的 docker 容器中。运行“docker-compose up”后,容器运行,但api不传递数据。发出 GET 请求的“minombre”的views.py如下:
def index(request):
response = requests.get('http://myapi')
print(response)
data = response.json()
name = data['user']
message = data['message']
return HttpResponse('<h2> {} </h2> <br> <h5> {} </h5>'.format(name, message))
Run Code Online (Sandbox Code Playgroud)
这是我用来运行容器的 docker-compose.yml。
version: '3'
services:
myapi:
build: ./myapi
container_name: myapi
ports:
- "8001:8001"
command: python manage.py runserver 0.0.0.0:8001
minombre:
build: ./minombre
container_name: minombre
ports:
- "8000:8000"
command: python manage.py runserver 0.0.0.0:8000
depends_on:
- myapi
Run Code Online (Sandbox Code Playgroud)
这是例外:
Exception Type: ConnectionError
Exception Value:
HTTPConnectionPool(host='myapi', port=80): Max retries exceeded with url: / …Run Code Online (Sandbox Code Playgroud)