前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >基于Docker-Android的移动开发环境容器化部署指南

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

作者头像
FGGIT
发布于 2025-04-22 01:01:24
发布于 2025-04-22 01:01:24
22802
代码可运行
举报
文章被收录于专栏:知识学习知识学习
运行总次数:2
代码可运行

前言

今天我们将介绍如何在Linux Ubuntu系统上使用Docker部署Android模拟器,并结合cpolar内网穿透工具实现远程访问。想象一下,你可以在任何地点、任何时间,通过公网地址轻松访问你的本地Android开发环境,是不是很方便?

随着Android应用越来越普及,测试和部署变得越来越重要。但传统的开发环境搭建往往繁琐且难以管理。好在Docker-Android的出现,它将整个Android开发环境封装在一个轻量级的Docker容器中,大大简化了开发和部署流程。

然而,如何让远程同事也能访问到这个便捷的开发环境呢?别担心,cpolar来帮忙!通过建立安全隧道,cpolar可以快速将你的本地环境暴露到公网,方便团队协作和项目管理。官方推荐在Ubuntu系统上进行安装和部署,如果你尚未安装Docker,请参考这篇教程:Docker 安装教程

1. 虚拟化环境检查

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

代码语言:javascript
代码运行次数:1
运行
AI代码解释
复制
sudo apt install cpu-checker

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
kvm-ok

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

image-20240410142131130
image-20240410142131130

2. Android 模拟器部署

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo docker pull budtmo/docker-android:emulator_9.0

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

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
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
image-20240410143933916

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

3. Ubuntu安装Cpolar

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

  • 使用一键脚本安装命令
代码语言:javascript
代码运行次数:1
运行
AI代码解释
复制
curl -L https://www.cpolar.com/static/downloads/install-release-cpolar.sh | sudo bash
  • 安装完成后,可以通过如下方式来操作cpolar服务,首先执行加入系统服务设置开机启动,然后再启动服务
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 加入系统服务设置开机启动
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
image-20240220142041422

4. 配置公网地址

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

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

点击创建

image-20240410163725485
image-20240410163725485

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

image-20240410163747616
image-20240410163747616

5. 远程访问

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

image-20240410164057546
image-20240410164057546
小结

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

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

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

6. 固定Cpolar公网地址

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

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

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

image-20240410164235792
image-20240410164235792

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

image-20240410164326796
image-20240410164326796

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

image-20240410164400239
image-20240410164400239

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

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

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

image-20240410164429886
image-20240410164429886

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

image-20240410164454787
image-20240410164454787

7. 固定地址访问

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

image-20240410164559476
image-20240410164559476

好了,到这里我们的教程就告一段落了。现在你已经掌握了如何在Ubuntu上使用Docker和cpolar实现远程访问Android模拟器的技巧。从此以后,无论你在世界的哪个角落,只要有网络,就能轻松搞定开发环境。是不是感觉生活变得更加美好了呢?快去试试吧,说不定还能发现更多有趣的应用场景哦!最后,别忘了分享给你的小伙伴们,让他们也一起享受这种便利。祝大家开发愉快,再见啦!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2025-04-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Ubuntu系统使用Docker部署Android模拟器并实现远程访问开发环境
本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。
aosei
2024/09/13
3790
Ubuntu系统使用Docker部署Android模拟器并实现远程访问开发环境
Ubuntu系统使用Docker本地部署Android模拟器并实现公网访问
随着移动互联网的飞速发展,Android应用开发日益成为业界关注的焦点。在开发过程中,对Android应用的测试和部署至关重要,这关系到应用能否在各种设备和环境下稳定运行。然而,传统的Android开发和测试环境搭建过程繁琐,且不易于管理和维护。为了解决这一问题,Docker-Android 应运而生,它将完整的Android开发环境封装在Docker容器中,大大简化了开发和部署流程。
屿小夏
2024/04/12
1.8K0
Ubuntu系统使用Docker本地部署Android模拟器并实现公网访问
本地服务器部署安卓模拟器结合内网穿透实现Android应用远程开发测试
本文主要介绍如何在Linux Ubuntu系统使用Docker部署docker-android安卓模拟器,并结合cpolar内网穿透工具实现公网远程访问本地部署的Android开发环境。
YY的秘密代码小屋
2024/08/19
2790
本地服务器部署安卓模拟器结合内网穿透实现Android应用远程开发测试
低成本实战:用Docker+Dify搭建企业级私有化AI服务平台指南
各位小伙伴们,大家好!今天我们要来一场技术大冒险,手把手教你如何在Linux Ubuntu系统上使用Docker快速部署大语言模型应用开发平台Dify,并且借助神奇的内网穿透工具cpolar,在没有公网IP或云服务器的情况下也能让朋友们轻松访问你的本地Dify服务。是不是听起来很带劲?
命运之光
2025/04/06
6440
低成本实战:用Docker+Dify搭建企业级私有化AI服务平台指南
Portainer本地部署结合内网穿透实现远程管理Docker容器和镜像
本文主要介绍如何使用Docker在本地部署Portainer可视化容器管理工具,并结合cpolar内网穿透工具实现异地使用任意浏览器远程访问管理界面。
aosei
2024/09/11
1960
Portainer本地部署结合内网穿透实现远程管理Docker容器和镜像
Dify开源大语言模型(LLM) 应用开发平台如何使用Docker部署与远程访问
Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中。
屿小夏
2024/04/12
3.9K0
Dify开源大语言模型(LLM) 应用开发平台如何使用Docker部署与远程访问
如何使用Docker部署Nginx容器实现无公网ip远程访问本地服务
在开发人员的工作中,公网远程访问内网是其必备的技术需求之一。对于运维人员和开发者来说,能够通过公网远程访问内部的服务和应用,能够极大地提升工作效率和便利性。本文将介绍如何利用 Ubuntu操作系统、Docker容器技术以及cpolar内网穿透工具来实现公网远程访问本地Nginx服务器的具体操作流程。
FGGIT
2024/10/15
1930
如何使用Docker部署Nginx容器实现无公网ip远程访问本地服务
Go File容器化部署方案:本地快速搭建与无公网IP远程传输文件指南
在这个信息大爆炸的时代,谁还没遇到过这样的尴尬场面呢?当你正在办公室埋头苦干时,手机突然跳出一条紧急邮件;或者你正惬意地窝在沙发上看电影,却想把这精彩片段分享给好友。是不是觉得这些场景似曾相识?别担心!今天就来给大家揭秘一款绝对能让你成为朋友圈里最酷的科技达人——Go File!它不仅能够让你在不同设备之间实现闪电般的文件传输,还能随时随地远程访问重要资料,无论是办公室、家里还是路上,无论是PC、手机还是平板电脑,一切尽在掌握中。
命运之光
2025/03/28
1470
Go File容器化部署方案:本地快速搭建与无公网IP远程传输文件指南
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
今天和大家分享的是如何在本地快速简单部署Rsshub工具,并结合cpolar内网穿透工具使用公网地址远程访问RSS订阅源.
FGGIT
2024/10/15
3210
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
使用Docker本地部署思维导图工具结合内网穿透远程使用详细流程
本文主要介绍在Linux系统以docker方式一键部署思维导图工具SimpleMindMap,并结合cpolar内网穿透工具实现远程也可以访问,远程访问好处在于可以在任意浏览器访问思维导图工具进行设计,提高工作效率!
FGGIT
2024/10/15
1600
使用Docker本地部署思维导图工具结合内网穿透远程使用详细流程
使用Docker部署Nightingale开源观测分析工具并实现远程访问
本文主要介绍如何在本地Linux系统部署 Nightingale 夜莺监控并结合cpolar内网穿透工具实现远程也可以访问,提高运维效率。解决本地部署后无法远程访问的难题。
大海里的番茄
2024/08/14
2450
使用Docker部署Nightingale开源观测分析工具并实现远程访问
在Linux使用docker本地部署JSON Crack并实现远程访问界面
我们运行 JSON Crack 后,在浏览器输入Linux局域网IP加8888端口,即可成功访问 JSON Crack 管理界面,下面安装介绍安装Cpolar内网穿透工具,实现无公网也可以远程访问本地 JSON Crack 界面
FGGIT
2024/10/15
1510
在Linux使用docker本地部署JSON Crack并实现远程访问界面
Docker部署Nexus Maven私服并实现远程访问Nexus界面
Cpolar内网穿透是一种安全的内网穿透云服务,可以将内网下的本地服务器通过安全隧道暴露至公网,使得公网用户可以正常访问内网服务。它支持HTTP、HTTPS、TCP协议端口映射。
鸽芷咕
2023/12/27
4930
Docker部署Nexus Maven私服并实现远程访问Nexus界面
Ubuntu快速部署与远程使用Portainer CE公网环境远程可视化管理容器和镜像
本篇文章介绍如何在Ubuntu中使用docker本地部署Portainer CE可视化管理工具,并结合cpolar实现公网远程管理容器和镜像。
aosei
2024/11/29
1980
Ubuntu快速部署与远程使用Portainer CE公网环境远程可视化管理容器和镜像
几分钟搞定远程开发环境!OpenHands本地Linux部署与远程访问
各位技术大咖、编程狂热者们,今天我要给大家揭秘一款绝对能让你秒变码界英雄的神器——OpenHands。这不仅仅是一个基于人工智能的软件开发代理平台,它简直就是你的私人智能小助手,帮你搞定从代码编写到命令行操作再到网页浏览的一切繁琐任务,效率翻倍不是梦!如果你也想解锁在Linux系统中安装并利用cporal内网穿透技术实现远程访问的新技能,那就跟着我一起探索这个神奇的‘魔法’吧!
YY的秘密代码小屋
2025/04/10
1020
几分钟搞定远程开发环境!OpenHands本地Linux部署与远程访问
如何在Linux使用Docker部署Firefox并实现无公网IP访问本地浏览器
在Docker中打开Firefox意味着我们将在一个Docker容器中运行Firefox浏览器。这对于一些特殊的测试场景非常有用,例如需要在不同版本的浏览器中进行测试。下面是一个简单的示例,演示如何在Docker中打开Firefox。
大海里的番茄
2024/03/13
7830
如何在Linux使用Docker部署Firefox并实现无公网IP访问本地浏览器
如何在CentOS使用Docker运行Nacos容器并实现无公网IP远程访问UI界面
Nacos是阿里开放的一款中间件,也是一款服务注册中心,它主要提供三种功能:持久化节点注册,非持久化节点注册和配置管理。
学编程的小程
2024/05/26
2670
如何在CentOS使用Docker运行Nacos容器并实现无公网IP远程访问UI界面
Docker本地部署开源浏览器Firefox并远程访问进行测试
Firefox是一款免费开源的网页浏览器,由Mozilla基金会开发和维护。它是第一个成功挑战微软Internet Explorer浏览器垄断地位的浏览器之一。
鸽芷咕
2023/12/30
2.3K0
Docker本地部署开源浏览器Firefox并远程访问进行测试
Linux系统部署UI For Docker并实现远程访问Docker Compose Web可视化
本篇文章将dockercompose结合cpolar内网穿透软件实现公网访问docker compose web可视化界面,更直观的进行远程编写。
aosei
2024/05/08
3360
Linux系统部署UI For Docker并实现远程访问Docker Compose Web可视化
Docker部署SimpleMindMap结合内网穿透实现公网访问本地思维导图
SimpleMindMap 是一个可私有部署的web思维导图工具。它提供了丰富的功能和特性,包含插件化架构、多种结构类型(逻辑结构图、思维导图、组织结构图等)、节点内容支持文本、图片、图标、超链接等,支持拖拽、导入导出功能、快捷键等。
YIN_尹
2024/03/10
2750
Docker部署SimpleMindMap结合内网穿透实现公网访问本地思维导图
推荐阅读
Ubuntu系统使用Docker部署Android模拟器并实现远程访问开发环境
3790
Ubuntu系统使用Docker本地部署Android模拟器并实现公网访问
1.8K0
本地服务器部署安卓模拟器结合内网穿透实现Android应用远程开发测试
2790
低成本实战:用Docker+Dify搭建企业级私有化AI服务平台指南
6440
Portainer本地部署结合内网穿透实现远程管理Docker容器和镜像
1960
Dify开源大语言模型(LLM) 应用开发平台如何使用Docker部署与远程访问
3.9K0
如何使用Docker部署Nginx容器实现无公网ip远程访问本地服务
1930
Go File容器化部署方案:本地快速搭建与无公网IP远程传输文件指南
1470
使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源
3210
使用Docker本地部署思维导图工具结合内网穿透远程使用详细流程
1600
使用Docker部署Nightingale开源观测分析工具并实现远程访问
2450
在Linux使用docker本地部署JSON Crack并实现远程访问界面
1510
Docker部署Nexus Maven私服并实现远程访问Nexus界面
4930
Ubuntu快速部署与远程使用Portainer CE公网环境远程可视化管理容器和镜像
1980
几分钟搞定远程开发环境!OpenHands本地Linux部署与远程访问
1020
如何在Linux使用Docker部署Firefox并实现无公网IP访问本地浏览器
7830
如何在CentOS使用Docker运行Nacos容器并实现无公网IP远程访问UI界面
2670
Docker本地部署开源浏览器Firefox并远程访问进行测试
2.3K0
Linux系统部署UI For Docker并实现远程访问Docker Compose Web可视化
3360
Docker部署SimpleMindMap结合内网穿透实现公网访问本地思维导图
2750
相关推荐
Ubuntu系统使用Docker部署Android模拟器并实现远程访问开发环境
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验