求 mac docker 替代

2021-12-30 10:29:01 +08:00
 QlanQ

Mac 上使用 docker 真的是太占用资源了,虽然可以限制 虚拟机的资源,但是 docker desktop 占用的内存越来越多 使用 minikube 也有很多限制

所以想干脆 自己弄个虚拟机然后在虚拟机里面安装 docker

目前都是 qemu 的虚拟机

需要下载 xcode 才能编译,现在正在下载中 https://github.com/gyf304/vmcli

这个有点 bug ,而且 不能在 image 里面安装 docker https://github.com/containers/krunvm

求 一个 轻量的虚拟机

7897 次点击
所在节点    macOS
35 条回复
richarddingcn
2021-12-30 13:00:23 +08:00
楼上 +1 本地 brew install 太舒服了
miao1007
2021-12-30 13:45:10 +08:00
vagrant 里启动 virtualbox
pavelpiero
2021-12-30 17:31:21 +08:00
开发环境 当真连个中间件都没有吗 全要 localhost 开发环境有个一台 2c4g 的虚拟机也足够把这些东西全装下拿来开发了吧
zzw1998
2021-12-30 17:34:12 +08:00
我在另一台电脑上装了个 Ubuntu 专门跑 docker 开发环境
EvilCult
2021-12-30 22:14:35 +08:00
所以我买了个树莓派………………
顺带 ipad 也能用
beginor
2021-12-30 23:55:26 +08:00
买个云轻量服务器?一年就几十块钱
fwindcore
2021-12-31 06:55:22 +08:00
没点进来还以为说的是 dock ,我确实不喜欢那个 dock ,放哪都不合适。
linshenqi
2021-12-31 14:55:28 +08:00
资源占用不知道,耗电是真的。。
notgoda
2022-01-10 21:28:47 +08:00
@joesonw
@libook 两位 V 友 请问你们说的这个方法 docker host 与直接在 PD/ virtualbox VM 里直接跑 docker 有什么优势吗?
@QlanQ 楼主,请问你最后用的什么方案了?
@guisheng V 友, 请问你说的是把虚拟机的配置存在 icloud? 这个除了在所有设备上同步配置外还有什么其他用途?
QlanQ
2022-01-10 23:44:55 +08:00
@notgoda 最后用了 vmcli ,运行了一个 ubuntu ,然后在 vm 里面运行的 docker ,主要用的是 minikube
joesonw
2022-01-11 00:23:01 +08:00
@notgoda docker cli 其实是一个客户端,通过 docker host 指定的连接和 docker server 通信。这样可以直接在 mac 命令行里执行 docker 命令。
notgoda
2022-01-11 02:50:15 +08:00
@joesonw 谢谢。那 doCker 容器的目录映射还是在 PD 里的 Debian ? PD 里的 Debian 仍是宿主机? 这样等于说 mac docker cli 需要穿过 pd >Debian >docker server. 这是怎么联通的呢?有没有参考的教程学习一下。谢谢
libook
2022-01-11 10:29:15 +08:00
@notgoda #29 我说的就是在虚拟机里跑 Docker 呀,Docker 需要跑在 Linux 上,Linux 需要跑在虚拟机里,跟你说的是一样的吧。

容器跟虚拟机的概念不一样,虚拟机相当于虚拟出来了一台计算机,跟宿主机是隔离的,各自管理各自占有的资源;容器相当于是在一台宿主机上划分出来一块资源加以保护,实际上还是宿主机来处理和调度资源。比如某容器里的文件,实际上就是存在宿主机的某个目录下面,某容器里的对外开放的网络端口实际上也是在宿主机上开的端口。相关可以去搜一下容器的原理,有很多文章讲得浅显易懂。

计算机 A 上跑虚拟机 B ,虚拟机 B 里跑容器 C ,你可以理解相当于有两台计算机 A 和 B ,B 上跑了 Linux 操作系统+Docker 服务,A 和 B 处于同一个网络中,你可以使用 IP 地址从 A 直接访问到 B 上的容器服务 API ,以及容器内应用程序的网络 API 。

如果需要 A 和 B 之间共享文件,就跟同一网络内两台计算机共享文件一样,基本都是走网络文件传输的协议( FTP 、SFTP 、NFS 、SMB 、SSHFS……),只不过有些虚拟机提供了便捷操作,可以自动地帮你搭建共享。
QlanQ
2022-01-11 10:59:28 +08:00
mac 上用虚拟机可以解决 docker for mac 的内存占用问题,但是 vm 创建的时候会限制 cpu ,但 docker for mac 本来就是虚拟机,cpu 原本就有限制
我用 vmcli 创建之后,出现 所有大核都围观的情况,我以为是我设置了 4 核心,刚好 4 个小核分配给了虚拟机,后面我设置了 6 核,还是一样的情况。。。
Mac 跑 docker 就是痛苦
istomyang
2023-01-26 22:17:17 +08:00
multipass 应该叫这个。PS:我感觉 docker 不应该用于开发环境,先解耦外部依赖,再然后手搓万物。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/825219

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX