我對 docker-volume 的理解是它是我本地機器上的一些存盤,在我本地機器上運行的不同 docker 容器也可以訪問。
我使用 docker-compose.yml 創建了一個運行 postgres 資料庫的 docker 容器。我將卷路徑指定為“postgres:/var/lib/postgresql/data”。然而,這似乎是一條 Linux 路徑。我假設 Linux 是在我的容器中運行的作業系統,并且 docker 以某種方式知道在我的 Windows 機器上的何處查找實際資料。有人能告訴我這個卷檔案的 Windows 路徑是什么嗎?
我已將卷的名稱指定為“postgres”。但是,當我使用“docker volume ls”列出本地計算機上的現有卷時,我只能看到一個名為“docker_postgres”的命名卷。我讀過 docker 將卷名與存盤在其中的專案目錄放在一起。這就是我想在本地計算機上找到卷位置的原因之一——只是因為我無法理解為什么前綴是“docker” '.
您可能意識到我對 docker 沒有廣泛的背景,請幫我解釋一下!
uj5u.com熱心網友回復:
有人能告訴我這個卷檔案的 Windows 路徑是什么嗎?
是的,有人可以(我不能,我不太了解內部結構),但這會繞過 docker volumes 的使用方式。
如果你想從外部容器訪問你的資料,你可以簡單地不使用命名卷,而是直接使用路徑而不是postgres卷名。
盡管如此,如果您仍然需要訪問資料,將卷安裝在一個容器中,使您的主機可以訪問資料(例如通過 SSH/SCP)是執行此操作的規范方法。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/536537.html
標籤:postgresql码头工人docker-compose
上一篇:無法連接到psql資料庫
