正文:
之前我们提到了如何使用 Pve
来创建 Openwrt
容器,但是那个方法需要使用自己编译的根文件系统压缩包。其实 Pve
还提供了许多容器模板(CT
模板)。
在 CT
模板页面,你可以点击上方的模板,选择你需要的模板进行下载。这里有各种类型的模板,包括系统模板如 Ubuntu
、Centos
,还有软件模板如 Nextcloud
、My
sql
、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 \
--s
wap
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
system
ctl
restart
ssh
转载请注明:汇站网 » 使用 lxc
容器安装 ubuntu
的 Pve