首页 > 其他分享 >使用ruri快速构建跨架构chroot容器

使用ruri快速构建跨架构chroot容器

时间:2024-07-08 11:13:22浏览次数:19  
标签:容器 chroot 架构 x86 64 arm64 ubuntu ruri

在开发过程中,我们偶尔会用到跨架构Linux容器。
ruri全称“轻量型,用户友好的Linux容器实现”,是一个1M左右大小的Linux容器实现,提供了一系列功能选项,致力于成为更加强大且安全的chroot命令替换。
我们以在x86_64系统下运行arm64的Ubuntu容器为例:

确认binfmt_misc支持:

~$ cat /proc/filesystems | grep binfmt_misc
nodev   binfmt_misc

确保能看见binfmt_misc的输出,大多系统甚至安卓的GKI内核应该都是支持的。

安装qemu-user-static:

sudo apt install qemu-user-static

获取rootfs:

这里使用作者编写的rootfstool脚本:

git clone https://github.com/Moe-hacker/rootfstool
cd rootfstool
./rootfstool download --mirror bfsu --distro ubuntu --version noble --arch arm64

于是我们得到了rootfs.tar.xz

获取ruri二进制:

前往https://github.com/moe-hacker/ruri/releases,下载最新的ruri-x86_64

wget https://github.com/Moe-hacker/ruri/releases/download/v3.3/ruri-x86_64
chmod 777 ruri-x86_64

解压rootfs,启动:

mkdir ubuntu-arm64
tar -xvf /path/to/rootfs.tar.xz -C ubuntu-arm64
cp /usr/bin/qemu-aarch64-static ubuntu-arm64/
sudo ./ruri-x86_64 -a aarch64 -q /qemu-aarch64-static ./ubuntu-arm64/

配置容器DNS:

最后在容器中:

rm /etc/resolv.conf
echo nameserver 114.114.114.114 > /etc/resolv.conf

标签:容器,chroot,架构,x86,64,arm64,ubuntu,ruri
From: https://www.cnblogs.com/Moe-hacker/p/18289497

相关文章

  • 微服务架构:设计理念、优势与Java技术栈实践
    引言        微服务架构是一种软件开发架构风格,它将一个单一的应用程序划分为一组小型、松散耦合的服务。每个服务实现特定的业务功能,并通过轻量级的通信机制(通常是HTTPRESTfulAPI)进行交互。微服务架构在近年来逐渐成为构建大型、复杂系统的首选方法。本文将介绍微......
  • Es集群架构的搭建以及集群的核心概念
    1、深入理解ES集群架构的底层原理这篇主要讲解es的集群架构的底层原理,es的索引分片,副本等基本知识集群的核心概念在安装集群之前,先了解一下集群的几个概念。如下图,就是一个三个节点组成的es集群,p0、p1、p2表示一个节点中的分片,R0、R1、R2表示分片对应的副本 1.1节点以及......
  • 秒杀圣经:10Wqps高并发秒杀,16大架构杀招,帮你秒变架构师
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪......
  • 主干网络篇 | YOLOv5/v7 更换主干网络之 ShuffleNetv2 | 高效CNN架构设计的实用指南(2)
    主干网络篇|YOLOv5/v7更换主干网络之ShuffleNetv2|高效CNN架构设计的实用指南概述YOLOv5和YOLOv7是目前主流的轻量级目标检测模型,在速度和精度方面取得了良好的平衡。然而,传统的YOLOv5/v7模型使用FPN和CSPNet等结构作为主干网络,在移动设备和嵌入式系统等资源受限的场景......
  • camunda开源工作流平台技术架构
    CamundaPlatform是一个基于Java的BPMN(流程引擎)、DMN(规则引擎)、CMMN(案例管理)的开源框架。主要组件是用Java编写的,主要专注于为Java开发人员提供在JVM上设计、实现和运行业务流程和工作流所需的工具(开源流程引擎、规则引擎等)。尽管如此,我们也希望将流程引擎技术提供给非......
  • 调度系统揭秘(下):调度算法与架构设计
    一、调度算法在调度系统中,调度算法常见是以下两种:广度优先深度优先1.1、广度优先:广度优先搜索算法按照任务之间的依赖关系进行逐级遍历,先执行所有直接前置任务,再执行所有直接后继任务,以此类推,直到所有的任务都被遍历和执行完成。其特点如下:执行顺序合理:广度优先搜索保......
  • [图解]企业应用架构模式2024新译本讲解19-数据映射器1
    100:00:01,720-->00:00:03,950下一个我们要讲的就是200:00:04,660-->00:00:07,420数据映射器这个模式300:00:09,760-->00:00:13,420这个也是在数据源模式里面400:00:13,430-->00:00:14,820用得最广泛的500:00:16,250-->00:00:19,170大多数都是用600:......
  • 站在架构师角度:深入剖析Spring事务管理底层原理
    摘要Spring框架的事务管理是企业级应用开发中的一个核心特性,它为不同的事务使用场景提供了统一的抽象和实现。本文从架构师的角度出发,深入探讨Spring事务管理的底层原理,包括其设计哲学、核心组件、以及事务传播行为等。1.事务管理概述事务是数据库操作中的一个基本概念,它保......
  • 系统架构设计师——计算机体系结构
    分值占比3-4分计算机硬件组成计算机硬件组成主要包括主机、存储器和输入/输出设备。主机:主机是计算机的核心部分,包括运算器、控制器、主存等组件。运算器负责执行算术和逻辑运算;控制器负责协调和控制计算机的各个部件;主存(内存)用于存储正在运行的程序和数据。存储器:存......
  • Java项目:基于SSM框架实现的中小企业人力资源管理系统【ssm+B/S架构+源码+数据库+开题
    一、项目简介本项目是一套基于SSM框架实现的中小企业人力资源管理系统包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。项目都经过严格调试,eclipse或者idea确保可以运行!该系统功能完善、界面美观、操作简单、功能齐全、管理便捷,具有很高的实际应用价值......