我對 Docker 很陌生。我想將本地目錄復制到 Docker 容器,但出現錯誤
在構建背景關系中找不到或被 .dockerignore 排除的檔案:stat ~/.ssh:檔案不存在
這是復制代碼行,
COPY ~/.ssh /root/.ssh
我可以確保我有~/.ssh它說不存在

我需要這樣做我的應用程式拋出錯誤
java.io.FileNotFoundException: /root/.ssh/id_rsa(沒有這樣的檔案或目錄)
然后我才意識到我需要將它復制到一個容器中。
在我的應用程式中,我需要使用id_rsa和known_hosts連接到 SFTP 服務器。
請幫忙。非常感謝 !
uj5u.com熱心網友回復:
我還沒有找到原因,但我通過在 docker-compose 中安裝卷找到了解決方法。
- ~/.ssh:/root/.ssh
但是如果有人能找到我的COPY問題的解決方案,我愿意學習它!
uj5u.com熱心網友回復:
據我所知,您只能從路徑中的檔案所在的路徑Dockerfile。
您不能ADD或COPY路徑之外的檔案Dockerfile是。
解決方案是volume使用docker runor掛載docker-compose(你已經做了什么),或者將目錄復制~/.ssh/到Dockerfile路徑中,然后docker build再次運行。
假設我們/home/saeed/docker/所在的`Dockerfile 存在以下內容:
FROM nginx:alpine
COPY .ssh /root/.ssh
在我們運行之前docker build,我運行:
cp -r ~/.ssh .
然后像之前一樣構建和運行鏡像。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/323206.html
標籤:码头工人
