我有一个应用程序在我们的自托管服务器上使用 docker(在 docker compose 上运行的 docker 图像)运行良好(我不知道网络和路由配置),但是当我在我的本地主机 macbook 上运行它时,它会产生连接远程 SQL Server 超时。
这是应用程序规格:
机器规格: 配备 Mac OS Ventura 13.1
的 Macbook pro 2020 M1 芯片这是 docker compose 配置:
version: "3.8"
services:
api:
container_name: mobile-apps-api-dev
image: ${CONTAINER_RELEASE_IMAGE}
restart: always
volumes:
- /Users/fhi-it-dev/Documents/server-mobile-apps-v2/uploads:/mobile-apps-api-dev/uploads
- /Users/fhi-it-dev/Documents/server-mobile-apps-v2/share:/mobile-apps-api-dev/share
ports:
- "4002:4002"
cpus: 0.7
command: npm run start:dev
networks:
- "mynetwork"
redis:
image: redis:7.0.4
restart: always
volumes:
- /Users/fhi-it-dev/Documents/server-mobile-apps-v2/data:/mobile-apps-api-dev/data
ports:
- "6379:6379"
command: redis-server --save 20 1 --loglevel warning --port 6379
networks:
- "mynetwork"
redisFcm:
image: redis:7.0.4
restart: always
volumes:
- /Users/fhi-it-dev/Documents/server-mobile-apps-v2/dataFcm:/mobile-apps-api-dev/dataFcm
ports:
- "6381:6381"
command: redis-server --save 20 1 --loglevel warning --port 6381
networks:
- "mynetwork"
networks:
mynetwork:
external: true
driver: "bridge"
这是产生的错误:
2023-05-03 08:51:45 original: ConnectionError: Failed to connect to 172.17.221.183:1433 in 15000ms
2023-05-03 08:51:45 at Connection.connectTimeout (/mobile-apps-api-dev/node_modules/tedious/lib/connection.js:1232:26)
2023-05-03 08:51:45 at Timeout._onTimeout (/mobile-apps-api-dev/node_modules/tedious/lib/connection.js:1177:12)
2023-05-03 08:51:45 at listOnTimeout (node:internal/timers:573:17)
2023-05-03 08:51:45 at process.processTimers (node:internal/timers:514:7) {
2023-05-03 08:51:45 code: 'ETIMEOUT',
2023-05-03 08:51:45 isTransient: undefined
2023-05-03 08:51:45 }
2023-05-03 08:51:45 }
这个IP就是我们的SQL Server IP地址:172.17.221.183
为什么在ubuntu服务器上运行正常,在本地mac上运行却超时?本地主机需要一些网络配置吗?
请帮忙