項目使用的Docker file 創建數據卷掛載點,結果發現宿主機目錄中的數據卷路徑下是空的,才知道docker file中創建的數據卷是隱式掛載,并不會在宿主機上留下持久化數據,隨著容器被刪除隱式掛載的數據卷也會跟著被刪除
后面改為在jenkins file里面顯式掛載了,移除了docker file 里面的隱式掛載,Dockerfile 中移除?
VOLUME ["/data"]
例如,在 Jenkins Pipeline 中運行容器時,可以通過 Docker 的數據卷(Volume)功能來實現數據的持久化。數據卷可以在容器之間共享和重用,即使容器被刪除,數據卷中的數據仍然保留。
sh "docker run -d --name ${NAME} -v ${VOLUME_NAME}:/data '${IMAGE_NAME}:${IMAGE_TAG}'"
Docker 運行命令示例(顯式掛載)
?
docker run -d --name my-container -v test:/data my-image
數據卷管理命令
?
# 查看數據卷
docker volume ls# 檢查數據卷內容
docker volume inspect test# 刪除數據卷
docker volume rm test
想要在宿主機查看容器內生成的文件并修改,要在 先ocker volume inspect test,找到UpperDir的路徑,然后就可以修改了
輕松查看Docker容器內的目錄在宿主機的文件路徑_docker容器內部文件在哪-CSDN博客?