当前位置: 首页 > news >正文

关于lvgl-for linxu的dockerfile

dockerfile的作用

# 定义基础镜像参数(如ubuntu:22.04)
ARG BASE_OS
FROM "$BASE_OS"# 更新软件源(非交互模式避免弹窗)
RUN DEBIAN_FRONTEND="noninteractive" apt-get update# 安装编译工具(make/cmake/gcc等)
RUN DEBIAN_FRONTEND="noninteractive" apt-get install -y make cmake build-essential python3-venv# 安装LVGL的SDL2显示后端依赖(图形渲染/窗口支持)
RUN DEBIAN_FRONTEND="noninteractive" apt-get install -y libsdl2-dev libsdl2-image-dev# 安装LVGL的DRM后端及输入依赖(硬件渲染/触摸屏支持)
RUN DEBIAN_FRONTEND="noninteractive" apt-get install -y libevdev-dev libdrm-dev linux-headers-generic# 创建工作目录并设为默认路径
RUN mkdir /workdir
WORKDIR /workdir

        构建一个包含 LVGL 所需编译工具和显示 / 输入后端依赖的开发环境,方便快速编译和运行基于 LVGL 的 Linux 应用。

        通过指定不同的BASE_OS,可以适配不同版本的 Debian/Ubuntu 系统。

        DEBIAN_FRONTEND="noninteractive" 是 Debian/Ubuntu 系统中用于控制软件包安装行为的环境变量,核心作用是:强制以 “非交互模式” 执行后续命令,避免安装过程中弹出交互式配置对话框(如时区选择、服务重启确认等)。

        dockerfile的标准格式如上,好处在于

.前提:确保 Ubuntu 已安装 Docker

# 更新软件源
sudo apt-get update
# 安装 Docker 依赖
sudo apt-get install -y ca-certificates curl gnupg lsb-release
# 添加 Docker 官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 添加 Docker 软件源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装 Docker 引擎
sudo apt-get update && sudo apt-get install -y docker-ce docker-ce-cli containerd.io
# 启动 Docker 服务
sudo systemctl start docker
# (可选)添加当前用户到 docker 组,避免每次用 sudo
sudo usermod -aG docker $USER
# 注销并重新登录生效

执行 docker build 会发生什么?

        在你的 Ubuntu 系统中,进入存放 Dockerfile 的目录,执行:

docker build -t my-lvgl-env:v1 .  # -t 给镜像起个名字,. 表示当前目录的 Dockerfile

http://www.dtcms.com/a/528228.html

相关文章:

  • 做ppt的网站叫什么名字sem和seo是什么职位
  • 临沂网站建设有哪些公司网页制作模板
  • UDP多线程在线咨询
  • 微信小程序原生如何使用画布生成名片
  • Postman介绍和安装,发送带参数的GET请求
  • 海西州wap网站建设公司网站布局怎么用dw做
  • Python入门经典题目
  • 佛山网站建设乐云seo在线制作wordpress媒体库略缩图
  • 网站的服务器怎么做的网站模板软件
  • Go Web 编程快速入门 07.4 - 模板(4):组合模板与逻辑控制
  • 【Canvas与旗帜】标准加拿大枫叶旗
  • LwIP协议栈MPA多进程架构
  • 【JUnit实战3_12】第七章:用 Stub 模拟进行粗粒度测试
  • 东莞网络推广网站做静态网站软件
  • 想建网站做优化网站建设服务费 印花税
  • verilog阻塞赋值和非阻塞赋值的区别
  • 【Redis典型应用——缓存详解】
  • 阮一峰《TypeScript 教程》学习笔记——模块
  • 第 09 天:文件传输 (SCP, SFTP, rsync, FTP, NFS)
  • pandas 和 numpy相关函数详解
  • 酵母 cDNA 文库:解码基因表达与功能研究的核心工具
  • Win10使用WSL2安装ubuntu22.04
  • macos 下 docker使用方法 新手教程
  • t恤定制网站哪个网站是做红酒酒的
  • 玉林网站建设培训wordpress美术馆插件
  • 一个大型 3A 游戏的开发流程是怎么样的?
  • 智能性能分析:AI大模型识别性能瓶颈并提出改进建议
  • Flutter 中使用 Flame + flame_forge2d 的注意事项清单
  • SpringBoot教程(安装篇):Elasticsearch及可视化工具安装(Windows环境)
  • 华为OD机试双机位A卷 - 商品推荐多属性排序 (C++ Python JAVA JS GO)