操作前提
由于大部分手机的内核并不满足使用docker的要求,因此需要用root权限修改手机部分kernel来满足,但是手机root并不适用所有手机,而且root也有一定的风险,因此使用termux终端来通过qemu虚拟机进行容器化操作可以实现满足docker运行的要求。
操作步骤
- 安装termux或者zerotermux或者其他类似终端
该软件作为开源项目可从github或gitee等网站进行下载 - 安装qemu虚拟机
进入termux终端后进行换源并安装qemu套件
sed -i 's@^\(deb.*stable main\)$@#\1\ndeb https://mirrors.tuna.tsinghua.edu.cn/termux/termux-packages-24 stable main@' $PREFIX/etc/apt/sources.list
apt update && apt upgrade
apt install qemu*
wget https://mirrors.aliyun.com/alpine/v3.15/releases/x86_64/alpine-extended-3.15.0-x86_64.iso
- 创建虚拟磁盘并安装alpine虚拟机
mkdir alpine && cd alpine
qemu-img create -f qcow2 alpine.qcow2 50G
qemu-system-x86_64 -smp 2 -m 2048 \
-drive file=alpine.qcow2,if=virtio \
-netdev user,id=n1,hostfwd=tcp::2222-:22 \
-device virtio-net,netdev=n1 \
-cdrom alpine-virt-3.15.0-x86_64.iso -boot d \
-nographic
此时进入alpine安装,具体参考我的alpine安装教程即可
4. 编写开机脚本
nano run.sh
填入以下内容:
qemu-system-x86_64 -smp 2 -m 2048 \
-drive file=alpine.qcow2,if=virtio \
-netdev user,id=n1,hostfwd=tcp::2222-:22 \
-device virtio-net,netdev=n1 \
-nographic
- 重启虚拟机并安装docker
bash run.sh
apk add docker && apk add docker-compose
service docker start
rc-update add docker boot
docker run hello-world
至此,可以愉快的使用docker了
反思与总结
我本人尝试了许多次手机安装docker的操作,这种借助qemu虚拟机的方法十分局限,因为qemu无法调用kvm,所以十分卡顿,建议仅作为一种尝试,并不建议日常使用
标签:虚拟机,termux,64,docker,qemu,alpine From: https://www.cnblogs.com/lcyc/p/18090889