正文:
之前我们提到了如何使用 Pve 来创建 Openwrt 容器,但是那个方法需要使用自己编译的根文件系统压缩包。其实 Pve 还提供了许多容器模板(CT 模板)。
在 CT 模板页面,你可以点击上方的模板,选择你需要的模板进行下载。这里有各种类型的模板,包括系统模板如 Ubuntu、Centos,还有软件模板如 Nextcloud、Mysql、Nginx等。
以 ubuntu22.04 模板为例,我们来创建一个 Ubuntu 容器。首先需要下载一个 ubuntu22.04 的模板,然后执行以下命令即可:
pct create 118 \
local:vztmpl/ubuntu-22.04-standard_22.04-1_amd64.tar.zst \
--rootfs local:20 \
--ostype ubuntu \
--hostname myubuntu \
--arch amd64 \
--cores 4 \
--memory 4096 \
--swap 4096 \
--onboot 1 \
--start 1 \
--net0 bridge=vmbr0,name=eth0,ip=172.21.9.26/24,gw=172.21.9.254 \
--password=12345
pct create 118: 创建容器的命令,118 是要创建的容器的 ID。
使用本地存储中的 Ubuntu 22.04 标准模板来创建容器,模板路径为 local:vztmpl/ubuntu-22.04-standard_22.04-1_amd64.tar.zst。
使用本地存储,并分配 20g 空间,命令为–rootfs local:20。
指定容器的操作系统类型为 Ubuntu,命令为–ostype ubuntu。
设置容器的主机名为 myubuntu,命令为–hostname myubuntu。
指定容器的架构为 amd64,命令为–arch amd64。
分配给容器的虚拟 CPU 核心数量为 4,命令为–cores 4。
为容器分配 4096MB 内存,命令为–memory 4096。
为容器分配 4096MB 交换空间,命令为–swap 4096。
设置容器在主机启动时自动启动,命令为–onboot 1。
容器创建后立即启动,命令为–start 1。
–net0 bridge=vmbr0,name=eth0,ip=172.21.9.25/24: 配置容器的网络接口。使用 vmbr0 桥接接口,并将容器内的网络接口命名为 eth0,并分配给容器的 IP 地址为 172.21.9.25,子网掩码为 24。如果需要动态获取 IP 地址,可以设置为 ip=dhcp。同时,将容器的网关设置为 172.21.9.254。
–password=12345: 将容器的 root 用户密码设置为 12345。
如果需要了解更多关于 pct 命令的信息,可以使用 man pct 命令进行查阅。例如,可以在创建容器时指定 DNS 服务器、时区以及是否为特权容器等。
创建完 Ubuntu 容器后,默认情况下无法通过 SSH 登录,因为 Ubuntu 需要进行配置才能允许 root 用户登录。
您可以通过 Pve 的 Web 页面或命令行方式进入刚刚创建的容器并执行相应命令。
# 进入容器,可使用 exit 退出
pct exec 118 bash
# 通过控制台进入,需要先按 ctrl+a,松开后按 q 进行退出
# pct console 118
进入容器后,再执行如下命令:
# 允许 root 用户登录
sed -i '/PermitRootLogin/ a PermitRootLogin yes' /etc/ssh/sshd_config
# 重启 ssh
systemctl restart ssh
转载请注明:汇站网 » 使用 lxc 容器安装 ubuntu 的 Pve