mac M2 使用模拟器构建docker x86_64环境

利用 QEMU 启动 lima 虚拟机 在通过colima 包装成docker

  • 配置文件 ~/.lima/colima
  • 默认目录 ~/
  • 9p 文件挂载会存在权限问题需要处理
  • 默认还在家目录
  • mac -> lima -> docker 三层转发
  • 在mac 上是 staff
  • 在lima 上面是 dialout
  • staff 和 dialout 权限不通
brew install colima
colima start --arch x86_64 --memory 4 --disk 10 --mount-type 9p

进入虚拟机

colima ssh

查看挂载方式

mount | grep Users

启停docker

colima start/stop

删除虚拟机

  • 有时候会崩溃 只能删除
  • 镜像会丢失
colima delete default

docker for mac 三挂载方式 推荐 gRPC FUSE、/ VirtioFS

  • gRPC FUSE
    • gRPC FUSE 使用 gRPC 协议实现,在 Docker for Mac 19.03 及更高版本中推荐使用
  • VirtioFS
    • VirtioFS 是一种在 Kubernetes 上运行非常流行的文件系统类型,在 Docker for Mac 3.4.0 及更高版本中推荐使用。
    • 它通过使用 virtio-fs 驱动程序来实现高性能的应用程序打包和交付,同时减少了在容器中使用 osxfs 时的 CPU 负载。
  • osxfs (Legacy)
    • osxfs 是 Docker for Mac 的传统文件系统驱动程序,仅适用于 macOS 宿主机。
    • 它与 macOS 本身的文件系统集成得比较好,但在性能等方面存在一些限制,如读写速度慢、无法处理大量文件等。
    • 在 Docker for Mac 3.4.0 及更高版本中不再建议使用。

进入docker for mac

/opt/homebrew/bin/docker run -it --privileged --pid=host justincormack/nsenter1
posted @ 2023-06-06 09:01  vx_guanchaoguo0  阅读(743)  评论(0编辑  收藏  举报