[英]Docker Run yields different result than docker-compose
我有一個 docker 組合文件,其中包含運行 npm 安裝的圖像。
services:
test:
image: company.com/myImage:1.0.2
environment:
- HTTP_PROXY=http://proxy.com:8080
- HTTPS_PROXY=http://proxy.com:8080
在安裝過程中運行docker-compose -f./docker/docker.build.yaml up
失敗,出現某種類型的 dns 問題
npm 動詞堆棧 FetchError:請求https://company.com/artifactory/api/npm/npm-remote/lodash.merge失敗,原因:getaddrinfo EAI_AGAIN company.com
然而,
運行docker run company.com/myImage:1.0.2
有效
npm http 獲取 GET 200 https://company.com/artifactory/api/npm/npm-remote/lodash.merge/-/lodash.merge-4.6.2.tgz 95ms
我的公司使用代理連接到 inte.net,因此我的本地環境變量包含一些代理環境變量。 我嘗試將這些環境變量硬編碼到 docker 撰寫文件中,但結果保持不變。
我錯過了什么?
編輯:添加了我測試過的環境變量來編寫文件
docker cli 默認使用 docker host
.network 而 docker-compose 正在創建它自己的docker_default
.network。 我的解決方案在於在撰寫文件中指定 docker.network
services:
test:
image: whatever
network_mode: "host"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.