顯示具有 container 標籤的文章。 顯示所有文章
顯示具有 container 標籤的文章。 顯示所有文章

2025/12/24

今天本來想在 portainer上匯入 其他 host 備分出來的 container 

結果在 image import 時一直出現以下錯誤













手動下指令看看

docker load --input 1224.tar 

invalid archive: does not contain a manifest.json

沒有指定名稱

我在管理介面上也沒有地方讓我指定名稱啊

重下指令

docker import 1224.tar test

醬就可以了

docker images -a


test:latest   fab5274bc293      855MB             0B    

用這個image跑個新的container
   
docker run -p 5678:5678 -d fab5274bc293 -it /bin/bash

2019/04/20

這几天在proxmox建了一個新的centos 7 LXC來用
在yum update總會出現如下的錯誤

Running transaction
  Updating   : filesystem-3.2-25.el7.x86_64                                1/2
Error unpacking rpm package filesystem-3.2-25.el7.x86_64
error: unpacking of archive failed on file /sys: cpio: chown
  Verifying  : filesystem-3.2-25.el7.x86_64                                1/2
filesystem-3.2-21.el7.x86_64 was supposed to be removed but is not!
  Verifying  : filesystem-3.2-21.el7.x86_64                                2/2

Failed:
  filesystem.x86_64 0:3.2-21.el7         filesystem.x86_64 0:3.2-25.el7     

Complete!

我記得之前也開過centos 7的LXC 並沒有這個問題
於是找了一下 有人說是bug
可是看來像是權限的問題
後來想到container 運行時
可以決定是不是要使用 --privileged
想說會不會是這個問題
於是去看了一下option
發現之前建的LXC是使用--privileged 而這次建的是 nonprivileged
可是在網頁介面上無法去更改這個參數
只能進console去改
路徑在 /etc/pve/nodes/nodename/lxc/guestid.conf裡
先關几

#unprivileged: 1
再開几
再重跑一次yum update就沒問題了
正常使用下是不需要打開 privileged 的 如果需要某些特殊權限才打開
所以記得再 關几 改回去 重開几

不過改完之後發現一堆daemon都起不來了
看來還是在一開始建立的時候就要決定要不要使用privileged
目前proxmox預設的值是不使用 要注意
所以我應該還是會選擇使用 privileged 比較沒有那麼多限制

正確的 privilege 跟 nonprivilege 的轉換方式是使用backup 再restore
restore時可以選擇要不要使用 privilege 模式


LXC跟KVM還是有很多小地方不同 要特別注意

http://dockone.io/question/416

2018/10/16

昨天測了一下proxmox的LXC
開關几速度超快
果然是container
不過在guset要mount nfs時出現了以下的錯誤

mount -t nfs 1.2.3.4:/volume1/abc /mnt/abc/
mount.nfs: access denied by server while mounting 1.2.3.4:/volume1/abc

明明網路都有通 權限也都有給
查了一下才知道proxmox因為安全的關係把這個功能關掉了
而管理這個功能的是
apparmor
這個daemon
再來就是找如何處理
有改config或是把apparmor直接關了
試過這二種都沒用
官方forum有提到這個地方會修改 但沒有提到時間表
最後成功的方法是先在host把要用的 nfs 先 mount 進來
之後再到這個LXC的resource add一個mount point
但因為add時無法選目錄
所以必須在加完後再直接到 /etc/pve/lxc 改config
例如是 222.conf
找到以下這行

mp0: local-zfs:subvol-222-disk-2,mp=/mnt/abc,size=8G

改成

mp0: /host/mount/point,mp=/mnt/abc

container再重開
就會直接看到所需的目錄已經mount在 /mnt/abc 了

不過改完之後 會在zfs殘留一個剛建立的檔
記得要去砍掉

zfs destroy rpool/data/subvol-222-disk-1

https://www.facebook.com/groups/pve.tw/permalink/827877674047462/


LXC目前的优缺點如下

佈建快
開關几快
占用資源少

無法live migration
無法放在nfs
無法直接clone (要clone之前要先建立snapshot)