[英]Docker Data/Named Volumes
我想把心思放在Docker卷上,但是我必須缺少一些東西才能理解它。
假設我有一個Python應用程序,需要根據env變量進行一些初始化。 我想要實現的是擁有一個“僅代碼映像” ,從中可以啟動將在執行時掛載的容器。 然后, Main容器的入口點腳本將從“僅代碼”容器中讀取並在其中生成一些文件。
我試圖創建一個圖像以包含代碼的副本
FROM ubuntu
COPY ./app /usr/local/code/app
然后docker create --name code_volume
並使用docker-compose:
app:
image: python/app
hostname: app
ports:
- "2443:443"
environment:
- ENV=stuff
volumes_from:
- code_volume
我從應用程序容器中收到一條錯誤消息,說它無法在/ usr / local / code / app / src中找到文件,但是當我使用bash運行code_volume然后將ls放入文件夾中時,文件就坐在那里...
我試圖更改訪問權限,添加/ bin / true(在某些示例中看到了),但是我卻無法獲得想要的工作。 我檢查了docker volume create
功能,但此后似乎是用於存儲/共享數據
我想念什么? 在裝入卷之前是否已執行入口點腳本? 對於這種情況,是否有不涉及裝入文件夾並為每個容器保留一個副本的最佳實踐? 我應該再考慮一下我的容器嗎?
創建后,您無需在code_volume容器上聲明該卷。
docker create -v /usr/local/code/app --name code_volume
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.