Linux系统搭建Android模拟器结合内网穿透远程开发测试详细教程

ubuntu中使用安卓模拟器 本文这里介绍 使用 android studio Emulator ,当然也有 Anbox (Lightweight),Waydroid (Best for Full Android Experience), 在另外一篇文中介绍使用 Waydroid。 阅读详情

前言

本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。

Android应用开发日益成为业界关注的焦点,在开发过程中,对Android应用的测试和部署至关重要,这关系到应用能否在各种设备和环境下稳定运行。然而,传统的Android开发和测试环境搭建过程繁琐,且不易于管理和维护。为了解决这一问题,Docker-Android 应运而生,它将完整的Android开发环境封装在Docker容器中,大大简化了开发和部署流程。

更重要的是,Docker-Android 提供了灵活的配置选项,可以根据项目需求进行定制化设置,满足不同的开发和测试需求。

然而,对于需要远程访问Android开发环境的开发者来说,仅仅依靠Docker-Android 还不足以实现这一目标。此时,我们需要借助cpolar这样的内网穿透工具,将本地的Docker-Android 环境暴露到公网上,实现远程访问。cpolar 通过在本地和公网之间建立安全的隧道连接,使得远程用户可以通过公网地址访问到本地的Docker-Android 环境。

这不仅方便了开发者的远程协作和项目管理,还提高了开发和测试的效率。根据官方说法,尽量采用ubuntu系统进行安装,采用Docker部署,首先设备需要提前安装好Docker,如没有安装,可以参考Docker 官方教程进行安装:Docker 官方安装教程.

1. 虚拟化环境检查

执行下面命令安装检查工具

sudo apt install cpu-checker

然后执行下面命令检查是否支持虚拟化

kvm-ok

提示下面信息表示正常支持虚拟化环境,如果不是出现如下信息,需要检查设备开启虚拟化支持,然后再进行下面进行android 模拟器部署

image-20240410142131130

2. Android 模拟器部署

本文采用docker方式部署,首先拉取一个镜像,官方提供很多种安卓版本,具体可以访问Github查看:https://github.com/budtmo/docker-android,理论上版本越高运行的开销会越大,所以本例以运行一个低版本的android 来演示,执行下面命令拉取一个android 9.0版本镜像.

sudo docker pull budtmo/docker-android:emulator_9.0

拉取后开始运行容器,下面命令指运行一台Samsung Galaxy S7 的安卓设备,其他机型可以去看一下官方教程,对外访问端口是6080

docker run -d -p 6080:6080 -e EMULATOR_DEVICE="Samsung Galaxy S7" -e WEB_VNC=true --device /dev/kvm --name android-container budtmo/docker-android:emulator_9.0

运行后,输入sudo docker ps 可以看到运行的容器,UP状态表示正常

image-20240410143933916

运行后,在浏览器访问Linux ubuntu 6080端口,即可成功看到android 模拟器界面,首次启动可能会比较慢,如果觉得卡,可以部署更低的机型,如S6,本地测试访问成功后,下面我们安装cpolar内网穿透,实现远程访问

image-20240410161732374

3. Ubuntu安装Cpolar

上面在本地Docker中成功部署了Android模拟器,并局域网访问成功,下面我们在Linux安装Cpolar内网穿透工具,通过Cpolar 转发本地端口映射的http公网地址,我们可以很容易实现远程访问,而无需自己注册域名购买云服务器.下面是安装cpolar步骤

cpolar官网地址: https://www.cpolar.com

  • 使用一键脚本安装命令
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 安装完成后,可以通过如下方式来操作cpolar服务,首先执行加入系统服务设置开机启动,然后再启动服务
# 加入系统服务设置开机启动
sudo systemctl enable cpolar

# 启动cpolar服务
sudo systemctl start cpolar

# 重启cpolar服务
sudo systemctl restart cpolar

# 查看cpolar服务状态
sudo systemctl status cpolar

# 停止cpolar服务
sudo systemctl stop cpolar

Cpolar安装和成功启动服务后,内部或外部浏览器上通过局域网IP加9200端口即:【http://192.168.xxx.xxx:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可

image-20240220142041422

4. 配置公网地址

点击左侧仪表盘的隧道管理——创建隧道,创建一个android 模拟器的公网http地址隧道!

  • 隧道名称:可自定义命名,注意不要与已有的隧道名称重复
  • 协议:选择http
  • 本地地址:6080(docker部署后对外访问的端口)
  • 域名类型:免费选择随机域名
  • 地区:选择China vip

点击创建

image-20240410163725485

隧道创建成功后,点击左侧的状态——在线隧道列表,查看所生成的公网访问地址,有两种访问方式,一种是http 和https,两种都可以访问,下面选择其中一种进行远程访问

image-20240410163747616

5. 远程访问

使用上面Cpolar生成的 https公网地址,在任意设备的浏览器进行访问,即可成功看到我们Android 模拟器,简单几步即可实现无需云服务器,无需公网IP实现远程访问.

image-20240410164057546

小结

为了更好地演示,我们在前述过程中使用了cpolar生成的隧道,其公网地址是随机生成的。

这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址由随机字符生成,不太容易记忆(例如:3ad5da5.r10.cpolar.top)。另外,这个地址在24小时内会发生随机变化,更适合于临时使用。

我一般会使用固定二级子域名,原因是我希望将网址发送给同事或客户时,它是一个固定、易记的公网地址(例如:android.cpolar.cn),这样更显正式,便于流交协作。

6. 固定Cpolar公网地址

由于以上使用cpolar所创建的隧道使用的是随机公网地址,24小时内会随机变化,不利于长期远程访问。因此我们可以为其配置二级子域名,该地址为固定地址,不会随机变化【ps:cpolar.cn已备案】

注意需要将cpolar套餐升级至基础套餐或以上,且每个套餐对应的带宽不一样。【cpolar.cn已备案】

登录cpolar官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称

image-20240410164235792

保留成功后复制保留成功的二级子域名的名称

image-20240410164326796

返回登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑

image-20240410164400239

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20240410164429886

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址二级名称变成了我们自己设置的二级子域名名称

image-20240410164454787

7. 固定地址访问

最后,我们使用固定的公网https地址访问,可以看到同样访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地android模拟器,无需公网IP,无需云服务器!

image-20240410164559476

Docker系列 利用RSShub搭建个人RSS源 从此万物皆RSS 转自我的个人博客https://blognas.hwb0307.com。欢迎关注! 前言 通过Docker系列 安装个人RSS服务TTRSS 手机完美适配的学习,我们已经成功地搭建了自己的RSS阅读器。可能也有小伙伴通过Unread之类的手机App观看了RSS订阅。不知道你自己觉得这个获取知识的方案好不好呢?有了RSS阅读器后,马上就会有一个很大的问题——RSS源。 由于RSS的式微,加上平台对自身资源的垄断,稳定的RSS越来越难获取。 今天我们要介绍一个在RSS界大名鼎鼎的项目——RSShub。RSS. 阅读详情

相关推荐

快速搭建Android开发环境:Docker部署docker-android并实现远程连接

快速搭建Android开发环境:Docker部署docker-android并实现远程连接

weixin_58070962的博客 9826

万物皆可订阅追更:RSS、RSSBud、RSSHub、Follow、加密解密

万物皆可订阅追更:RSS、RSSBud、RSSHub、Follow

freeking101的博客 7万+

无需公网IP:Termux+手机+内网穿透实现Minecraft远程多人联机

无需公网IP:Termux+手机+内网穿透实现Minecraft远程多人联机

ks_wyf的博客 2327

ubuntu安装安卓模拟器

最近由于工作原因笔记本安装成Ubuntu系统,而安装ubuntu之后找了很多看电视的方法,要么就是太繁琐,要么就是需要直播源,所以最后还是寄希望于安卓模拟器。网上翻了很多资料最后决定使用genymotion,下面简单记录一下,分享给有需要的同仁。

二爷的博客 1万+

教你使用 Linux+MeterSphere 一站式开源持续测试平台远程访问

MeterSphere 是一站式开源持续测试平台, 涵盖测试跟踪、接口测试、UI 测试和性能测试等功能,全面兼容 JMeter、Selenium 等主流开源标准,有效助力开发和测试团队充分利用云弹性进行高度可扩展的自动化测试,加速高质量的软件交付,推动中国测试行业整体效率的提升。下面介绍在Linux 中部署MeterSphere 并且结合cpolar 内网穿透实现远程也可以访问MeterSphere 界面!

知道的越多,不知道的越多。 1670

在 Ansys CFX Pre 中配置 RGP 表的分步指南

掌握在 Ansys CFX Pre 中设置 RGP 表的技巧,以优化仿真精度和效率。

jkh920184196的博客 1664

Linux玩转安卓开发:Docker-Android模拟器私有化部署指南

大家好,今天要给大家带来一个超级实用的教程:如何在Linux Ubuntu系统上使用Docker部署Android模拟器,并结合cpolar内网穿透工具实现远程访问。想象一下,你可以在任何地方、任何时候,通过公网地址轻松访问你的本地Android开发环境,是不是很酷?随着Android应用的普及,测试和部署变得越来越重要。但传统的开发环境搭建往往让人头疼不已,繁琐且难以管理。好在Docker-Android横空出世了!

私聊前往站内信:https://i.youkuaiyun.com/#/msg/chat/weixin_44976692 1万+

Splunk CVE-2018-11409认证绕过漏洞深度解析

Splunk作为主流企业级日志分析平台,其Web管理接口的认证机制直接关系到整个安全运营体系的可信边界。CVE-2018-11409本质上是REST API路由层会话校验缺失引发的未授权访问问题,根源在于`/en-US/splunkd/__raw/`路径绕过了splunkweb与splunkd之间的信任链验证,导致配置文件、用户哈希、App源码等敏感信息明文泄露。该漏洞凸显了Web接口权限模型设计失守的风险,尤其在默认配置未加固、HTTPS未启用、初始密码未修改的生产环境中危害急剧放大。结合vulfocus

weixin_30875157的博客 599

如何在Linux上搭建docker-android安卓模拟器并远程访问提升开发效率

本文将介绍如何在Linux Ubuntu系统上使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现对本地Android开发环境的公网远程访问。随着Android应用开发的日益普及,测试和部署过程变得至关重要,这直接影响到应用在各种设备和环境中的稳定性。然而,传统的Android开发和测试环境搭建往往繁琐且难以管理。为了解决这一问题,Docker-Android应运而生,它将完整的Android开发环境封装在Docker容器中,从而大幅简化了开发和部署的流程。

梁俊星的博客 3539

DCM、PLL以及DLL等概念及详情

介绍DLL、PLL以及DCM的概念,总结其模块构成、工作原理、相互之间的差异与各自优势。

CLL_caicai的博客 8338

告别昂贵硬件!用Unity3D 2023 + ROS2 Humble搭建你的第一个SLAM仿真实验室(保姆级教程)

本文提供了一份详细的教程,介绍如何使用Unity3D 2023和ROS2 Humble搭建SLAM仿真实验室,无需昂贵硬件即可实现虚拟传感器模拟和算法测试。通过Docker容器配置、ROS2安装优化及Unity插件集成,开发者可以快速构建高精度的仿真环境,适用于自主导航、多传感器标定等场景。

weixin_42526353的博客 434

内网穿透的应用-如何在Linux系统搭建docker-android结合内网穿透远程访问本地安卓开发环境

这不仅方便了开发者的远程协作和项目管理,还提高了开发和测试的效率。运行后,在浏览器访问Linux ubuntu 6080端口,即可成功看到android 模拟器界面,首次启动可能会比较慢,如果觉得卡,可以部署更低的机型,如S6,本地测试访问成功后,下面我们安装cpolar内网穿透,实现远程访问。最后,我们使用固定的公网https地址访问,可以看到同样访问成功,这样一个固定且永久不变的公网地址就设置好了,随时随地都可以远程访问本地android模拟器,无需公网IP,无需云服务器!

微学AI的博客 2664

【论文精读】《Towards Deep Learning Models Resistant to Adversarial Attacks》

本文探讨了深度学习模型在面对对抗性攻击时的脆弱性,并提出了一种基于鲁棒优化的方法来增强神经网络的对抗鲁棒性。通过鞍点优化框架,作者提供了对抗攻击和防御机制的统一视角,并在MNIST和CIFAR-10数据集上验证了其方法的有效性。对抗训练的核心思想是将对抗样本引入训练过程,使模型能够学习到对抗样本的特征,从而提升其鲁棒性。本文通过鞍点优化框架提出了一种基于鲁棒优化的对抗训练方法,显著提升了深度学习模型的对抗鲁棒性。本文为深度学习模型的对抗鲁棒性研究提供了新的理论和实证支持,同时为未来研究指明了方向。

nmdbbzcl的博客 611

Ubuntu系统Docker部署Android手机模拟器结合内网穿透异地远程开发实战

本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。Android应用开发日益成为业界关注的焦点,在开发过程中,对Android应用的测试和部署至关重要,这关系到应用能否在各种设备和环境下稳定运行。然而,传统的Android开发和测试环境搭建过程繁琐,且不易于管理和维护。

BBX__XB的博客 1336

《QGIS快速入门与应用基础》191:渐变区间设置(等间隔/分位数)

深入解析QGIS中渐变符号化的核心环节——渐变区间设置,重点对比等间隔与分位数两种主流模式的原理与应用。作者指出,90%的渐变效果问题源于区间设置不当,强调必须先分析数据分布特征(通过统计面板查看直方图、极值等)再选择匹配模式。等间隔模式适用于均匀分布数据(如海拔、温度),将数值范围均等划分;分位数模式则针对偏态数据(如GDP、人口),保证每个区间要素数量相等。文章通过界面示意图、效果对比图和操作步骤详解,指导读者根据数据类型选择合适区间模式,并提醒常见避坑要点:社会经济数据禁用等间隔、分类数不超过8类。

LuckyHanMo的博客 318

YOLO26涨点改进 | 检测头Head创新改进篇 | 利用DynamicConv高效动态卷积改进YOLO26检测头,DyHead通过增强检测头操作,轻量化改进、提高模型目标检测的精度

YOLO26作为新一代轻量化目标检测模型的代表,凭借精简的Backbone架构、高效的特征融合 Neck 设计,在实时检测场景(如嵌入式设备、边缘计算)中展现出优异的性能,成为工业落地与科研入门的优选模型。但在实际应用中,YOLO26原生检测头仍存在核心瓶颈:采用固定参数卷积核,无法根据输入特征的目标尺度、纹理差异动态调整卷积权重,导致多尺度目标适配不足、复杂背景下特征利用率低,且传统改进方案往往难以平衡“精度提升”与“轻量化”,要么精度提升有限,要么大幅增加参数量、拖累推理速度。

qq_36130719的博客 372

如何在Linux环境本地部署安卓系统模拟器并结合内网穿透实现异地开发

本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。Android应用开发日益成为业界关注的焦点,在开发过程中,对Android应用的测试和部署至关重要,这关系到应用能否在各种设备和环境下稳定运行。然而,传统的Android开发和测试环境搭建过程繁琐,且不易于管理和维护。

m0_59281987的博客 1524

【LangChain编程:从入门到实践】实现多模态代理

【LangChain编程:从入门到实践】实现多模态代理 关键词:LangChain, 多模态代理, 自然语言处理, 机器学习, 知识图谱, 对话系统, 代码生成, AI代理 1. 背景介绍 随着人工智

欢迎来到我的优快云空间!这里聚焦AI大模型应用实战,分享前沿技术、实战案例与开发经验。 581

手机开MC服务器!FCL+Termux结合内网穿透远程在线联机教程

作为安卓端强大的Minecraft Java版启动器,支持模组、光影及主流加载器(如Forge/Fabric),让移动端玩家也能享受完整的Java版体验。但如何突破网络限制,实现真正的远程联机呢?本文提出一种创新方案,结合FCL启动器Cpolar内网穿透工具和Termux终端环境,在安卓设备上搭建低延迟、稳定的远程联机服务。通过Termux,我们可以在安卓端运行轻量级Linux环境,配合cpolar实现内网端口映射,无需公网IP即可让好友从任何地方加入你的世界。

私聊前往站内信:https://i.youkuaiyun.com/#/msg/chat/weixin_44976692 1万+

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Linux系统本地部署Android模拟器并实现无公网IP远程访问开发测试

本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。Android应用开发日益成为业界关注的焦点,在开发过程中,对Android应用的测试和部署至关重要,这关系到应用能否在各种设备和环境下稳定运行。然而,传统的Android开发和测试环境搭建过程繁琐,且不易于管理和维护。

m0_69984273的博客 1943

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

【Linux】本地部署安卓开发环境Docker-Android并实现远程访问

本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境.

AI+全栈,AI+应用,实操落地,前沿技术 2589

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

如何利用Docker和内网穿透工具构建Android系统远程测试环境

本文将详细介绍如何在 Linux Ubuntu 系统中使用 Docker 部署并结合 cpolar 实现对本地开发环境的公网远程访问。无论你是初学者还是经验丰富的开发者,都能从中受益匪浅!在当今的移动应用开发领域,Android 应用已经成为不可或缺的一部分。然而,传统的 Android 开发和测试环境搭建往往让开发者头疼不已:配置繁琐、管理困难、兼容性问题层出不穷……这些都极大地影响了开发效率。幸运的是,Docker 的出现为这一难题带来了曙光。

沐雨风栉 951

如何使用浏览器异地远程访问本地Linux搭建的安卓手机模拟环境界面

本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。Android应用开发日益成为业界关注的焦点,在开发过程中,对Android应用的测试和部署至关重要,这关系到应用能否在各种设备和环境下稳定运行。然而,传统的Android开发和测试环境搭建过程繁琐,且不易于管理和维护。

2301_77053417的博客 1139

Ubuntu系统使用Docker部署Android模拟器并实现远程访问开发环境

Ubuntu系统使用Docker部署Android模拟器并实现远程访问开发环境

旋律 | 话语 | 色彩 | 情景 1259

基于Docker-Android的移动开发环境容器化部署指南

基于Docker-Android的移动开发环境容器化部署指南

FGGIT的博客 1726

Ubuntu系统使用Docker部署Android模拟器构建可远程访问的环境

大家好,今天要给大家带来一个超级实用的教程:如何在Linux Ubuntu系统上使用Docker部署Android模拟器,并结合cpolar内网穿透工具实现远程访问。想象一下,你可以在任何地方、任何时候,通过公网地址轻松访问你的本地Android开发环境,是不是很酷?随着Android应用的普及,测试和部署变得越来越重要。但传统的开发环境搭建往往让人头疼不已,繁琐且难以管理。好在Docker-Android横空出世了!

fq157856469的博客 1061
上一篇: 【网络安全】PostMessage:分析JS实现XSS
下一篇: 【Docker】Linux系统一键搭建开源内容管理框架Drupal详细教程
秋说
秋说 优质创作者: 编程框架、信息安全技术领域 优质创作者: 编程框架、信息安全技术领域
博客等级 码龄4年 3万+粉丝 1906原创
评论 9
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋说

感谢打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值