debian-arm64-docker 笔记

文章目录

  • 构建debian-arm64 docker宿主机系统
    • UBUNT20.04-X86下
      • 环境安装
      • 下载文件
      • 拷贝文件
      • 文件释放
      • 修改文件
    • qemu-arm-static环境
      • 切换环境
      • debian网络配置,
      • 分区配置
      • 域名解析服务器
      • 串口控制台调整
      • 打包debian arm64根文件系统
    • debian-arm64宿主机系统 安装基础软件
      • 基础工具安装
      • docker安装
  • ubuntu20.04 - X86 上制作arm64-docker镜像
    • docker 安装
    • 镜像生成
      • Dockerfile文件
      • 生成docker镜像
      • 导出docker镜像
      • arm64宿主机load镜像
      • arm64宿主机后台启动容器
      • 查看容器状态
      • 查看生成的镜像信息
  • docker常用操作

构建debian-arm64 docker宿主机系统

UBUNT20.04-X86下

环境安装

sudo apt-get install binfmt-support qemu qemu-user-static debootstrap

下载文件

sudo debootstrap --arch=arm64 --foreign bullseye bullseye http://mirrors.ustc.edu.cn/debian/ 

拷贝文件

cd bullseye
sudo cp /usr/bin/qemu-arm-static ./usr/bin
nano ./etc/resolv.conf
    nameserver 114.114.114.114

文件释放

sudo DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true LC_ALL=C LANGUAGE=C LANG=C chroot ./ debootstrap/debootstrap --second-stage

修改文件

确认sources.list文件是下面这样的

tanic@tanic-ThinkPad-Edge-E540:~/images/dd/bullseye$ cat etc/apt/sources.list
deb http://mirrors.ustc.edu.cn/debian bullseye main

qemu-arm-static环境

切换环境

sudo chroot .

debian网络配置,

echo "auto eth0" >> /etc/network/interfaces
echo "iface lo inet loopback" >> /etc/network/interfaces
echo "allow-hotplug eth0" >> /etc/network/interfaces
echo "iface eth0 inet static" >> /etc/network/interfaces
echo "address 192.168.182.32" >> /etc/network/interfaces
echo "netmask 255.255.255.0" >> /etc/network/interfaces
echo "gateway 192.168.182.245" >> /etc/network/interfaces

分区配置

echo "proc /proc defaults 0 0" >> etc/fstab
echo "/dev/mmcblk1p2 / ext4 errors=remount-ro 0 0" >> /etc/fstab
echo "devpts /dev/pts devpts defaults,gid=5,mode=620 0 0" >> /etc/fstab
echo "sysfs /sys  sysfs defaults 0 0 "  >> /etc/fstab
#echo "tmpfs /var/log tmpfs defaults,noatime,mode=1777,nosuid,size=40M 0 0"  >> etc/fstab

域名解析服务器

网络设置要保证最后的板子能上网

root@tanic:~# cat /etc/resolv.conf
echo "nameserver 114.114.114.114" >> etc/resolv.conf

你可能感兴趣的:(debian-arm64-docker 笔记)