
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
!在Docker容器中运行Android x86和Android ARM
Docker Android - 在Docker中运行QEMU Android x86和Android ARM!支持X11转发!适用于Android的CI/CD!
Dock-Droid是一个基于Docker的Android虚拟化解决方案,通过QEMU和KVM技术在容器中运行Android x86系统。该镜像旨在提供便捷的Android运行环境,支持硬件加速、外设转发和多种开发/测试工具集成,适用于安全研究、应用测试、CI/CD流程等场景。
docker commit克隆容器状态1. 开启硬件虚拟化
进入主机BIOS设置,启用硬件虚拟化功能(具体步骤因主板型号而异)。
2. 安装依赖
根据主机系统安装QEMU及相关依赖:
bash# ARCH sudo pacman -S qemu libvirt dnsmasq virt-manager bridge-utils flex bison iptables-nft edk2-ovmf # UBUNTU/DEBIAN sudo apt install qemu qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virt-manager # CENTOS/RHEL/FEDORA sudo yum install libvirt qemu-kvm
3. 启用服务和加载KVM模块
bashsudo systemctl enable --now libvirtd sudo systemctl enable --now virtlogd echo 1 | sudo tee /sys/module/kvm/parameters/ignore_msrs sudo modprobe kvm
1. 带GUI的BlissOS x86镜像
bashdocker run -it \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ sickcodes/dock-droid:latest
2. 无头模式(服务器或本地无GUI环境)
bashdocker run -it \ --device /dev/kvm \ -e EXTRA="-display none -vnc 0.0.0.0:99,password=on" \ -p 5555:5555 \ -p 5999:5999 \ sickcodes/dock-droid:latest
VNC连接步骤:
在QEMU控制台输入change vnc password user设置密码,然后通过localhost:5999或服务器IP连接。
3. 无预安装镜像版本(:naked)
适用于自定义镜像:
bashdocker run -it \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -v "${PWD}/android.qcow2:/home/arch/dock-droid/android.qcow2" \ -p 5555:5555 \ sickcodes/dock-droid:naked
4. 无KVM模式(实验性)
性能较差,仅用于不支持KVM的环境:
bashdocker run -it \ -e CPU=Penryn \ -e ENABLE_KVM=' ' \ -e KVM=' ' \ -e CPUID_FLAGS=' ' \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ sickcodes/dock-droid:latest
5. 调整内存大小
添加-e RAM=10参数分配10GB内存:
bashdocker run -it \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -e RAM=10 \ -p 5555:5555 \ sickcodes/dock-droid:latest
摄像头转发
USB直通模式
bashlsusb # 示例输出:Bus 003 Device 003: ID 13d3:56a2 IMC Networks USB2.0 HD UVC WebCam
hostbus和hostaddr参数转发:
bashdocker run -it \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ -e EXTRA='-device usb-host,hostbus=3,hostaddr=3' \ sickcodes/dock-droid:latest
网络重定向模式
bashsudo usbredirserver -p 7700 13d3:56a2 # 13d3:56a2为摄像头的Vendor ID:Product ID
bashdocker run -it \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ -e EXTRA="-chardev socket,id=usbredirchardev1,port=7700,host=172.17.0.1 -device usb-redir,chardev=usbredirchardev1,id=usbredirdev1,bus=ehci.0,debug=4" \ sickcodes/dock-droid:latest
GPU加速(实验性)
bashdocker run -it \ --privileged \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ -p 50922:10022 \ --device=/dev/dri \ --group-add video \ -e EXTRA='-display sdl,gl=on' \ sickcodes/dock-droid:latest
UEFI启动
添加-e EXTRA='-bios /usr/share/OVMF/x64/OVMF.fd'参数:
bashdocker run -it \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ -e EXTRA='-bios /usr/share/OVMF/x64/OVMF.fd' \ sickcodes/dock-droid:latest
自定义镜像
运行时挂载本地镜像
bashdocker run -it \ -v "${PWD}/android.qcow2:/home/arch/dock-droid/android.qcow2" \ --privileged \ --device /dev/kvm \ -v /tmp/.X11-unix:/tmp/.X11-unix \ -e "DISPLAY=${DISPLAY:-:0.0}" \ -p 5555:5555 \ sickcodes/dock-droid:latest
构建自定义镜像
bashCDROM_IMAGE_URL='https://sourceforge.net/projects/blissos-x86/files/Official/bleeding_edge/Generic%20builds%20-%20Pie/11.13/Bliss-v11.13--OFFICIAL-20201113-1525_x86_64_k-k4.19.122-ax86-ga-rmi_m-20.1.0-llvm90_dgc-t3_gms_intelhd.iso' docker build \ -t dock-droid-custom \ --build-arg CDROM_IMAGE_URL="${CDROM_IMAGE_URL}" .
bashsu start adbd
bashadb connect localhost:5555 adb -s localhost:5555 root adb -s localhost:5555 shell
该项目由@sickcodes(Sick.Codes)维护。更多贡献者信息请参见https://github.com/sickcodes/dock-droid/blob/master/CREDITS.md%E3%80%82
特别感谢https://github.com/BlissRoms%E6%8F%90%E4%BE%9BAndroid x86镜像,以及https://github.com/zhouziyang%E7%BB%B4%E6%8A%A4%E7%9A%84https://github.com/remote-android/redroid-doc%E9%A1%B9%E7%9B%AE%E3%80%82
Dock-Droid基于GPL v3+许可证开源。
本项目仅用于Android安全研究和技术学习。产品名称、商标等均为其各自所有者的财产,与本项目无关联。
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务