在 LXC 上安装 Alpine
LXC
LXC 是一种操作系统级别的虚拟化方法,用于在控制主机上使用单个 Linux 内核运行多个隔离的 Linux 系统(容器)。
使用 LXC,您可以在容器中运行 Alpine Linux,并使用原生的 Alpine Linux 初始化系统 (openrc) 在其中启动服务。
本文档介绍如何在 LXC 容器上安装 Alpine Linux。
准备工作
LXC 安装
您需要在您的主机系统上安装 “lxc” 软件包。例如,在 Arch Linux 中,您可以通过运行以下命令安装:
# pacman -S lxc
桥接创建
您还需要在主机上创建网络桥接。
在 Arch Linux 或基于 Arch Linux 的系统中设置桥接
以下是如何使用 netctl 设置桥接的示例
复制示例文件 “bridge”
# cp /etc/netctl/examples/bridge /etc/netctl/myBridge
根据需要修改您的桥接配置文件(网络接口:eno1 和 tap0 当然是根据您的需要)
Contents of /etc/netctl/myBridge
停止活动连接
# systemctl stop dhcpcd
启动您的桥接
# netctl start myBridge
您可能希望设置您的系统在启动时自动启动您的桥接。
容器创建
要安装 Alpine Linux edge 版本,请运行
# lxc-create --name alpine-edge -t alpine -- --release edge
您还可以配置共享目录,该目录将可以从主机和容器访问。在本示例中,我们将主机上的 /media/d 目录在容器中可用
# mkdir /var/lib/lxc/alpine-edge/rootfs/media/d
将以下行添加到容器的配置文件中
Contents of /var/lib/lxc/alpine-edge/config
启动容器
# lxc-start -n alpine-edge
关闭容器
# lxc-stop -n alpine-edge
进入 Alpine Linux 控制台
# lxc-attach -n alpine-edge
容器设置
修改您的 apk/repositories 配置文件。建议包含 “main”、“testing” 和 “community” 仓库。
Contents of /etc/apk/repositories
升级您的 Alpine Linux 系统
# apk update && apk upgrade -a
启动服务
# /etc/init.d/service_name start
或
# rc-service service_name start
添加服务到自动启动
# rc-update add service_name
重启您的容器
reboot