Javascript Can';在nextjs getStaticProps中是否不向docker容器发送请求?

Javascript Can';在nextjs getStaticProps中是否不向docker容器发送请求?,javascript,docker,api,docker-compose,next.js,Javascript,Docker,Api,Docker Compose,Next.js,我正试图从Next.jsgetStaticProps函数向另一个容器发送一个简单的GET请求,该容器是使用docker compose的节点后端api 这是我的docker撰写文件: version: "3" services: web: build: ./backend volumes: - ./backend:/home/node/app/ ports: - "3001:3001" fronten

我正试图从Next.js
getStaticProps
函数向另一个容器发送一个简单的GET请求,该容器是使用docker compose的节点后端api

这是我的docker撰写文件:

version: "3"
services:
  web:
    build: ./backend
    volumes:
      - ./backend:/home/node/app/
    ports:
      - "3001:3001"
  frontend:
    build: ./frontend
    volumes:
      - ./frontend:/home/node/app/
    ports:
      - "3000:3000"
    depends_on:
      - "web"
Next.js中的Index.js:

export const getStaticProps=async(上下文)=>{
const{data}=await axios({method:“GET”,url:)http://web:3001" })
返回{
道具:{
data:data.message,
},
}
}
我做错了什么


我用相同的url连接了其他非Next.js应用程序
http://web:3001
它们工作得很好。为什么我不能构建我的next.js应用程序?

你应该定义一个在所有容器之间共享的网络,这样你就可以访问web上的后端:3001。我怎么做?前端应用程序在你的浏览器中运行;这超出了Docker空间,无法使用任何Docker网络功能。它必须连接到后端容器的已发布的
端口:
;如果浏览器和容器都在同一台主机上运行,
http://localhost:3001
。但是getStaticProps函数是在服务器端运行的