在kvm主机上运行一个alpine,单独运行docker
一台all in one 主机,宿主机运行的 archlinux+ kvm qemu,部分硬件直通。 只占用2G左右硬盘。其他分区均为ext4 格式
宿主机也可以直接docker,但是感觉不是很方便,所以单独做一个vm 之用来运行docker
#获取安装影像
选这个虚拟机版本 就好了
plaintext
cd /mnt/hdd/iso/linux/
wget https://dl-cdn.alpinelinux.org/alpine/v3.16/releases/x86_64/alpine-virt-3.16.3-x86_64.iso
#创建虚拟机主机
plaintext
mkdir -p /mnt/ssd/alpinx-kvm/
cd /mnt/ssd/alpinx-kvm/
qemu-img create -f qcow2 alpine-sys.qcow2 50G
#启动参数
plaintext
nano startalpine.sh
内容
plaintext
MY_OPTIONS="+ssse3,+sse4.2,+popcnt,+avx,+aes,+xsave,+xsaveopt,check"
ALLOCATED_RAM="1G" # MiB
CPU_SOCKETS="1"
CPU_CORES="6"
CPU_THREADS="12"
args=(
-name "macos"
-enable-kvm -m "$ALLOCATED_RAM" -cpu host,kvm=on,vendor=GenuineIntel,+invtsc,vmware-cpuid-freq=on,"$MY_OPTIONS"
-machine q35
-usb -device usb-kbd -device usb-tablet # 鼠标穿透 mac 和win linux 都适用 键盘鼠标正常
-smp "$CPU_THREADS",cores="$CPU_CORES",sockets="$CPU_SOCKETS"
-smbios type=2
-device ich9-intel-hda -device hda-duplex
-device ich9-ahci,id=sata
#qemu-img create -f qcow2 alpine-sys.qcow2 50G
-cdrom /mnt/hdd/iso/linux/alpine-virt-3.16.3-x86_64.iso
-drive index=0,media=disk,format=qcow2,if=virtio,file=/mnt/ssd/alpinx-kvm/alpine-sys.qcow2
-netdev user,id=net0,smb=/mnt,hostfwd=tcp::8006-:3306,hostfwd=tcp::8222-:22
-device virtio-net-pci,addr=0x10,netdev=net0,id=net0,mac=52:54:00:c9:18:27
-monitor stdio
-vga virtio
-display none
-vnc 0.0.0.0:8 -k en-us
)
qemu-system-x86_64 "${args[@]}"
#安装
setup-alpine 用安装助手安装 30秒就可以装完了
#安装docker
ssh用上面的端口8222登录到alpine
plaintext
apk add nano
nano /etc/apk/repositories
把 community 的那行注释去掉
plaintext
apk add docker
rc-update add docker boot
service docker start
#安装fish 和 neofetch
plaintext
apk add fish neofetch
#完毕 关机备份
alpine 默认是用 poweroff 关机的,但是。。我习惯性 还是用 shutdown
plaintext
mkdir -p /mnt/hdd/kvm-bak/alpine-docker
cp alpine-sys.qcow2 /mnt/hdd/kvm-bak/alpine-docker/
cp start_nogpu.sh /mnt/hdd/kvm-bak/alpine-docker/
#docker 几个常用镜像
v2ray aliyunpanwebdav nginx mysql
查看单独的文章 https://dev.leiyanhui.com/alpine/docker-s/
#最后的 启动脚本
脚本备份: github传送门