關於Docker compose值IP與域名的對映 之 extra_host

悟自省發表於2023-03-31

公司的所有專案都是採用Docker容器化部署,最近有一個專案需要使用定時任務呼叫第三方Api,正式web環境伺服器的網路與第三方網路是通暢的,但是當將程式碼釋出到正式環境,呼叫介面卻顯示

System.Net.Http.HttpRequestException: Resource temporarily unavailable

這一看就是實際網路還是不通,無法訪問

之後找到解決辦法,先在伺服器 /etc/hosts 目錄下配置IP與域名的對映

配置的方式與windows一致,前面是IP 域名;配置後在伺服器請求介面可以獲取資料。但是透過網頁使用手動方式呼叫介面
還是無法獲取資料,之後想到應用是容器化部署的。開啟docker-compose.yml檔案

使用 extra_hosts 對IP與域名進行對映,注意格式是相反的

extra_hosts:
 - "googledns:8.8.8.8"
 - "dockerhub:52.1.157.61"

配置後,需要重新部署
docker compose up -d --force-recreate web

訪問介面可以獲取資料,大功告成!!!

相關文章