原文:基于docker/虚拟机的esp32远程工做流linux
工做流框图

背景说明
- 为何须要这套工做流--为了知足高效和灵活的开发方式
- 由于我常常须要在公司和家里切换不一样的电脑工做,因此编译环境须要在远程主机上,这样不一样的工做机器都能访问相同的工做编译环境。
- 由于esp32官方推荐的仍是在linux下编译,因此最简单的就是咱们的编译环境和工具链仍是在linux下。可是咱们平常的编码和硬件烧录仍是在本地windows和mac的居多。因此就有了这一套本地环境和远程docker环境相互配合的工做流。咱们能够在远程编译环境使用命令行高效编译,本地继续使用VSC等工具编码和烧录。
- 为何用docker而不是虚拟机?
- 由于docker更轻量小巧,结合hub.docker.com 用起来也更方便些,更具备灵活性。固然若是你就是喜欢用VM,也是能够的,这个流程仍然适用,只是挂载宿主的目录方式有所不一样而已。
- 使用docker另一个好处是,你能够很方便的将你配置的开发环境经过hub.docker.com分享给须要的人。
工做流步骤
- 选择对应的linux系统镜像建立咱们的docker镜像,这里咱们推荐选择ubuntu 16.04系统。
- 启动时,咱们用 -v 参数将远程宿主机的本地目录挂载进docker系统。
- 按照官方esp32的编译环境要求,部署相应的工具链和环境。部署到咱们映射的目录中,这样相关的工具和代码等均可以在宿主机里面可见,而且可访问。
- 将挂载的目录经过samba或者sshfs共享给远程的编码机器(window或者MAC)环境,而且挂载到本地虚拟磁盘路径上。
- 平常的编码和烧录,咱们就能够像访问本都路径同样访问远程vps的开发路径。使用VSC编码,或者download tool进行开发板烧录。
docker镜像
最后,若是你对使用docker环境开发esp32感兴趣,也能够直接使用我目前在用的针对esp32的docker开发镜像。一键部署,开箱即用。docker
docker pull hiproz/ubuntu-esp32
参考
esp32 ubuntu开发环境搭建
docker经常使用操做命令
windows下实现esp32下载
sshfs的安装ubuntu