Mac上使用Docker记录

 

lima

Lima: Linux virtual machines (on macOS, in most cases)

Linux virtual machines, typically on macOS, for running containerd

 

podman

The best free & open source container tools

Manage containers, pods, and images with Podman. Seamlessly work with containers and Kubernetes from your local environment.

 

Docker Desktop

Install Docker Desktop – the fastest way to containerize applications.

 docker volume create redis-config(数据卷配置文件)

查看 路径  docker volume inspect redis-config 

目录下面,但是我们mac上并没有这个地址,网上找到的资料是运行下面的代码就能找到对应的文件夹目录,就是在容器里映射。主要是--privileged获取了主机dev目录的访问权限

docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh

 

原因及解法分析
为什么如此,是因为MacOS 是在本地运行xhyve 虚拟机管理的docker,容器卷是在虚拟机的文件系统中创建, 在macOS的FileSystem无法直接访问。

可以启动一个新容器,在新容器中访问容器卷。可使用却不局限于如下命令。

命令解析:docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh

docker run --pid=host 当创建一个Docker容器的时候,可以指定一个PID名空间(名空间不存在则会新建)。容器启动进程在该名空间内PID为1(-t 1)。当PID1进程结束之后,Docker会销毁对应的PID名空间,并向容器内所有其它的子进程发送SIGKILL。
nsenter -m 进入到docker容器的mount namespace

docker context list

docker context show

 

orbstack

Seamless and efficient Docker and Linux on your Mac. Glide through your work faster with our Docker Desktop alternative.

 

posted @   qingjiawen  阅读(61)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Blazor Hybrid适配到HarmonyOS系统
· Obsidian + DeepSeek:免费 AI 助力你的知识管理,让你的笔记飞起来!
· 分享4款.NET开源、免费、实用的商城系统
· 解决跨域问题的这6种方案,真香!
· 一套基于 Material Design 规范实现的 Blazor 和 Razor 通用组件库
历史上的今天:
2021-08-04 c 结构体
2021-08-04 c 位运算
2021-08-04 c 无类型指针与类型转换
2021-08-04 c 内存分区
2020-08-04 iis 自定义404页面
点击右上角即可分享
微信分享提示