Fedora

如何在 Ubuntu 主機上執行 Fedora 容器?

  • March 23, 2015

我正在使用 Ubuntu 14.10 並試圖執行 Fedora 容器。我通過給定模板創建的容器無法正常工作。我猜原因是systemd沒有正確設置。

首先,我lxc在主機上安裝。然後我創建一個 Fedora 容器

# lxc-create -t fedora -n fedora

然後啟動容器

# lxc-start -n fedora 

與其他容器不同,Fedora 容器沒有自動獲取 IP 地址

# lxc-ls -f
NAME     STATE    IPV4        IPV6  GROUPS  AUTOSTART  
-----------------------------------------------------
centos   RUNNING  10.0.3.213  -     -       NO         
dropbox  RUNNING  10.0.3.222  -     -       NO         
fedora   RUNNING  -           -     -       NO    

我使用lxc-attach進入 Fedora 容器,發現唯一執行的程序是init. dhclient如果被執行,它可以獲得一個IP 。

[root@fedora ~]# ps x
 PID TTY      STAT   TIME COMMAND
   1 ?        Ss     0:00 /sbin/init
  12 ?        S      0:00 /bin/bash
  90 ?        R+     0:00 ps x

不應該dhclientopenssh-server以及其他必要的服務會自動啟動systemd嗎?歡迎任何關於 Ubuntu/Debian 主機上的 Fedora 容器的建議/經驗。

Firsteval,您創建了fedora兩次容器:您的第一個命令足以從linux 容器映像下載並創建一個 fedora 容器。

其次,我打賭 apparmor 會弄亂你容器的 cgroups 安裝點。你應該看到 apparmor 在/var/log/kern.log. 添加lxc.aa_profile = unconfined到容器的配置中/var/lib/lxc/fedora/config是一種*“快速而骯髒”*的啟動方式。

然後,您將擁有一個由 dhcp 守護程序賦予的 IPv4 地址。

在此之後,您可以在 apparmor 的 lxc 配置文件中探勘更多內容並設置相關內容,以避免您的容器在沒有主機保護的情況下執行。

引用自:https://serverfault.com/questions/677303