文章目录
- 为什么要使用容器进行安装环境
- 整体框图
- 安装虚拟机(如果安装了跳过)
- 安装ubuntu或者centos 系统(如果安装了跳过)
- 检测硬件是否接入到虚拟机上
- 安装docker
- 下载镜像(需要docker 知识,不知道直接复制命令)
- 查看下载的镜像
- 运行容器
- 查看运行的容器
- 进入容器(这个容器必须启动了 docker ps 能查看到)
- 启动环境
- 编译代码
- 下载代码
- 进行监控
- 退出监控
- 退出镜像
- 需要的知识
- 熟悉linux 执行
- 熟悉容器(不熟悉页没有关系,没有几条指令)
为什么要使用容器进行安装环境
- 不用担心环境被自己破坏,破坏了重新启动一个就可以。
- 支持插拔式,这个系统是完全隔离的,如果本地编译比较慢完全可以放到服务器上进行编译。
- 一个虚拟机可以安装多个docker 互相不会影响以后的环境都会用这种方式安装。
整体框图
- 本地端口接入esp32 开发板
- 安装虚拟机
- 安装linux 环境
- 配置本地和虚拟机的共享文件夹
- 把本地端口映射到虚拟机内 (这个在vm 上会提示你)
- 安装docker 应用(在linux 环境中安装)
- 文件映射 本地 <-------> 虚拟机 <----------> 容器
- 硬件端口映射 本地 <-------> 虚拟机 <----------> 容器
安装虚拟机(如果安装了跳过)
安装 VM 虚拟机 会用到这两个软件 一个是vm 虚拟机 一个是crt (可以选择性安装)
安装ubuntu或者centos 系统(如果安装了跳过)
检测硬件是否接入到虚拟机上
- 插入usb 设备
- 会弹出下面
安装docker
点击这个查看容器的安装 显示这样代表安装成功
docker -v
下载镜像(需要docker 知识,不知道直接复制命令)
docker pull registry.cn-shanghai.aliyuncs.com/zhijiandianzi/esp32:v0.1
下载完成的截图
查看下载的镜像
docker images
运行容器
docker run -itd --name esp32 -v /mnt/hgfs/share:/home/share --device /dev/ttyUSB0:/dev/ttyS0 registry.cn-shanghai.aliyuncs.com/zhijiandianzi/esp32:v0.1 /bin/bash
- docker run docker 命令 run 是运行命令
- -itd docker 命令 表示 交互式后台运行
- -v docker 命令 表示 文件映射 前面为宿主机 后面为容器内
- – devoce 通-v 标识端口映射
registry.cn-shanghai.aliyuncs.com/zhijiandianzi/esp32:v0.1 为容器的镜像
- /bin/bash 为脚本命令
- 如果运行成功会显示这个容器 长id
查看运行的容器
docker ps
如果显示为空 可以运行以下脚本 (查看停止的容器)
docker ps -a
进入容器(这个容器必须启动了 docker ps 能查看到)
执行以下命令
docker exec -it 969c /bin/bash
- docker exec docker 命令 意思是进入容器
- -it docker 命令 交互式
- 969c 容器的id 这个要根据你自己的id 去写 这个不需要写全,让容器能知道就可以 。一般前四位就可以了
- /bin/bash 这个为 命令
启动环境
进入 容器中 执行
cd /home/esp-idf/
执行下面命令进行 启动环境配置
注意每次启动容器都要执行一次
. ./export.sh
编译代码
进入 项目目录 hello_world 这个文件夹是我从 eps-ide里面复制的目录
运行
idf.py build
编译报错了,这个是之前编译过其他项目 ,按照指示运行一下脚本
/home/esp-idf/tools/idf.py fullclean
再次运行 以下脚本
idf.py build
下载代码
这个需要注意 这个端口是映射的你接开发板的端口
idf.py -p /dev/ttyS0 flash
进行监控
idf.py -p /dev/ttyS0 -b 115200 monitor
退出监控
# 注意 按键
ctrl+ ]
退出镜像
开发完毕 退出容器
本次的开发环境就到此结束了,欢迎指正。