Kvm

VM 上的 Docker 容器未寫入 ZFS 數據集

  • August 4, 2017

我的設置如下:

帶有 QEMU/KVM 的物理主機 -> 帶有 Docker 的虛擬機 -> rtorrent Docker 容器

我有一個名為“main”的 ZFS 池和一個名為“data”的數據集。正如通過此連結所建議的那樣,“數據”數據集通過 virtio 核心模組安裝在 VM 上。從這裡開始,我的 rtorrent Docker 容器將其下載卷映射到 VM 上已安裝的數據集:

$ docker run -dt --name rtorrent-rutorrent --network=host -p 8080:80 -p 49160:49160/udp -p 49161:49161 -v /data/rtorrent:/downloads -e "NOIPV6=1" diameter/rtorrent-rutorrent:latest

這是我感到困惑的地方:當我連接到容器時,我可以通過 touch 寫入數據集,wget 沒有問題。但是,當我將 torrent 添加到 rtorrent 時,沒有任何內容。它處於“下載”狀態,沒有下載速度。一旦我將容器卷更改為指向 Docker VM 本地磁碟,一切正常。

我已經對 rtorrent 過程(連結在這裡)做了幾個 straces,但這裡並沒有很多讓我印象深刻的東西。任何輸入將不勝感激。

這已通過以下方式解決:https ://unix.stackexchange.com/a/212014/245005

簡而言之,需要在掛載選項中添加一個標誌才能正常工作 - “cache=mmap”。現在可以正常工作了。

引用自:https://unix.stackexchange.com/questions/383920