前言
-
Termux基础准备 :更新软件包,安装QEMU虚拟机组件和
wget。 -
创建Alpine虚拟机 :下载Alpine
virt镜像,用QEMU创建虚拟硬盘并启动安装。安装时执行setup-alpine进行配置。 -
在Alpine中安装Docker :启动安装好的Alpine系统,换源后执行
apk add docker docker-compose安装,并添加为自启动服务。 -
部署Docker服务 :在Alpine虚拟机内,使用
docker run命令拉取并运行上表中的镜像,注意正确配置端口映射。
一,安装命令行工具
需要提前下载/准备
Termux 安装包:termux.apk
首先,将termux软件安装在手机上
当前小米机型为例(其他机型步骤基本一致),打开设置,搜索电池,然后点击进入电量和性能,再次点击应用配置,设置KSWEB和Termux后台无限制:
这样,即可保证KSWEB和Termux应用后台无限制运行啦!
二、设置内网穿透,外网可访问
通过 Termux 安装并配置 cpolar 内网穿透,为本地 `8000 端口分配一个可直接访问的公网地址,并支持按需启用 HTTPS、访问控制与开机自启,让你的手机博客真正做到随时随地在线。
安装cpolar
首先,打开安装好的Termux软件,首次打开会进行一些软件包的安装,等待片刻即可:
进入页面后,首先,创建一个sources.list.d的文件夹:
mkdir -p $PREFIX/etc/apt/sources.list.d
然后,添加cpolar下载源,并且更新仓库:
#添加cpolar下载源
echo "deb [trusted=yes] http://termux.cpolar.com termux extras" >> $PREFIX/etc/apt/sources.list.d/cpolar.list
#更新仓库
pkg update
更新完成后,输入如下命令进行安装cpolar:
pkg install cpolar
接下来,安装termux服务(注意:安装完成termux后,关闭termux,然后重新进入termux):
pkg install termux-services
重启完termux后,然后启动cpolar内网穿透
sv up cpolar
# 设置开机自启
sv-enable cpolar
然后在手机浏览器我们输入http://localhost:9200,就可以看到cpolar web UI管理界面,使用在cpolar官网注册的邮箱账号即可登陆:
http://localhost:9200
注册好账号后,输入账号信息,登录到后台管理页面
需要说明的是,随机域名方式更适合预算有限的场景:系统大约每24 小时会自动更换一次地址,不太适合长期访问或对外分享;并且当地址变化时,你还需同步更新 Typecho 后台的站点地址,否则样式与资源可能加载异常。若希望长期稳定、免改配置地对外访问,建议使用固定域名方案。
三、安装手机版虚拟机alpine
1. 使用"安装模式"重新启动
(注意:这里必须带上 -cdrom 和 -boot d,否则它永远找不到启动文件)
qemu-system-x86_64 -smp 4 -m 3072 -drive file=alpine.qcow2,if=virtio -netdev user,id=n1,hostfwd=tcp::2222-:22 -device virtio-net,netdev=n1 -cdrom alpine.iso -boot d -nographic
2. 执行安装脚本
登录 root 后,输入:
setup-alpine
3. 关键步骤(请务必检查)
在安装过程中,请重点确认以下几项:
-
Keyboard :
us -
Hostname : 随意(如
alpine) -
Network :
eth0->dhcp -
Mirror : 选择
f(find fastest) 或者手动输入一个(如http://mirrors.ustc.edu.cn/alpine/) -
SSH :
openssh -
Disk to use : 这里非常关键! 看到提示时输入
vda。 -
How to use it : 输入
sys(表示安装完整系统到硬盘)。 -
确认擦除 : 输入
y。
4. 彻底关机
安装完成后,看到 Installation is complete 提示,输入:
poweroff
5. 再次正常启动
(不带 CDROM)
这次,我们移除掉安装镜像的参数,再次尝试从硬盘启动:
qemu-system-x86_64 -smp 4 -m 3072 -drive file=alpine.qcow2,if=virtio -netdev user,id=n1,hostfwd=tcp::2222-:22,hostfwd=tcp::3000-:3000 -device virtio-net,netdev=n1 -nographic
hostfwd=tcp::3000-:3000 为设置 termux外部:内部 docker 的端口映射
四、alpine中安装docker
1. 开启 Community 仓库
Alpine 的官方仓库分为 main 和 community。Docker 位于后者中。
-
编辑仓库配置文件:
vi /etc/apk/repositories -
找到类似
http://.../v3.xx/community的那一行,如果开头有#,请删掉它(按i进入编辑模式,删掉#,按Esc后输入:wq保存退出)。 -
或者直接运行命令追加(更快捷):
echo "https://dl-cdn.alpinelinux.org/alpine/latest-stable/community" >> /etc/apk/repositories
2. 更新并安装 Docker
apk update
apk add docker docker-compose
3. 设置 Docker 开机自启并启动服务
Alpine 使用 OpenRC 来管理服务,而不是常见的 systemd。
将 docker 加入启动序列
rc-update add docker boot
立即启动 docker 服务
service docker start
4. 验证安装
docker version
如果看到 Client 和 Server 的版本信息,说明 Docker 已在你的虚拟机内成功运行。