写点什么

Docker Desktop 收费之后,神网友弄了个替代方案

作者:Cirrus Minor

  • 2021-09-06
  • 本文字数:1111 字

    阅读完需:约 4 分钟

Docker Desktop 收费之后,神网友弄了个替代方案

macOS 属于类 Unix 系统,但它并不是 Linux,因此如果/当我们需要使用 docker 之类的 linux 工具时,很不幸我们需要像在 Windows 世界中一样安装 VM 才行。Docker 当然也得这么干。

 

像大多数人一样,我多年来一直使用 Docker Desktop 来处理容器。它很好用,几乎所有事情都能做得井井有条。我不清楚从什么时候开始,Docker 桌面添加了对运行 Kubernetes 的支持。纸面上来看这是挺好的更新,技术上来讲也是可行的,但代价还是无法避免……(至少在我的 Mac 上)随它而来的是狂转的风扇和 747 起飞般的巨大噪音。所幸大部分时间我都可以访问远程 Kubernetes 服务器,因此我很少使用这个方法,但每当我(重新)尝试用它时,我都会很快关掉它。

安装 Kubernetes


上个月,我换了工作加入了Kaltura——所以得重新做一遍系统设置(就是那些重要的事情,比如设置开发字体、所有编辑器的主题等:)),我还决定试一试看能不能不用听那些噪音就让 Kubernetes 跑起来——结果发现似乎几个简单的步骤就能实现我的目标:


brew install hyperkitbrew install minikubeminikube start
复制代码


如果你愿意,还可以在启动之前定义 minikube 映像的资源


minikube config set cpu <whatever>minikube config set memory <whatever>
复制代码


macOS 属于类 Unix 系统,但它并不是 Linux,因此如果/当我们需要使用 docker 之类的 linux 工具的时候,很不幸我们需要像在 Windows 世界中一样安装 VM 才行。Docker 当然也得这么干。

 

像大多数人一样,我多年来一直使用 Docker Desktop 来处理容器。它很好用,几乎所有事情都能做得井井有条。我不清楚从什么时候开始,Docker 桌面添加了对运行 Kubernetes 的支持。纸面上来看这是挺好的更新,技术上来讲也是可行的,但代价还是无法避免……(至少在我的 Mac 上)随它而来的是狂转的风扇和 747 起飞般的巨大噪音。所幸大部分时间我都可以访问远程 Kubernetes 服务器,因此我很少使用这个方法,但每当我(重新)尝试用它时,我都会很快关掉它。



运行 Docker


现在你就可以 kubectl deploy 随便什么东西了,只要它存在就行——但是如果你想部署一个本地创建的映像该怎么办呢?好吧,这并不复杂,你需要在 minikube 使用的 docker 上构建映像:


eval $(minikube docker-env)
复制代码


然后你可以 docker build -t <whatever>,(或其他什么 docker 命令)像往常一样。


它很好用,我将 eval 命令添加到了我的.zshrc 文件中,然后彻底不用 docker 桌面了。


补充:大约一天前,我看到 Docker 正在尝试通过 Docker 桌面获利,开始需要企业订阅许可了,因此使用 hypekit+minikube 不仅看起来效果更好(起码对我来说是这样),对于不想/无法让他们的组织支付订阅费用的开发人员来说也是一个很好的方案,所以这又是一个加分点。


原文链接:


https://arnon.me/2021/09/replace-docker-with-minikube/

2021-09-06 15:4310890
用户头像

发布了 74 篇内容, 共 29.4 次阅读, 收获喜欢 83 次。

关注

评论 2 条评论

发布
用户头像
浪费时间
2021-11-24 11:05
回复
用户头像
这就是你复制粘贴两遍的理由?
2021-09-20 16:53
回复
没有更多了
发现更多内容

🏆【SpringBoot技术专题】「Cache缓存组件」Redis缓存使用技巧及注解大全

洛神灬殇

redis cache Sprint Boot 7月日更

Rust从0到1-智能指针-RefCell<T>

rust 智能指针 smart pointer RefCell<T>

支点交易所APP系统开发介绍

如何让孩子晚上八点前写完作业的

Ian哥

作业

共1575道,内卷把我逼成“收集王”汇总十家大厂面试题后,产出Java“完美圣经”

Java架构师迁哥

代理

卢卡多多

代理 代理原理 7月日更

Linux之文件属性详解

入门小站

Linux

RFX币挖矿系统软件开发简介

Rust 与 Golang - 何时使用它们?

吴脑的键客

rust Go 语言

用太极拳讲分布式理论,真舒服!

悟空聊架构

分布式 事务 CAS Base 7月日更

Flink生产环境TOP难题与优化,阿里巴巴藏经阁YYDS

王知无

一篇并不起眼的Kafka面试题

王知无

我被InfoQ写作平台签约啦

xcbeyond

程序人生 签约计划

蚂蚁矿池系统软件开发方案

如何设计财务对账系统 —— 从0到1搭建对账系统实战

蒋川

支付系统 对账系统 财务对账系统 财务审核系统

Xshell 如何导入 PuTTYgen 生成的 key

HoneyMoose

【LeetCode】三数之和Java题解

Albert

算法 LeetCode 7月日更

如何优雅的实现一个Client

Apologize

Java 设计模式 代码设计 client

Structured Concurrency for C

实力程序员

NFT卡牌挖矿钱包系统软件开发方案

从0到1:用脚做一个路由器漏洞实例

网络安全学海

运维 网络安全 信息安全 渗透测试· SQL注入

登录验证那些事儿

江湖一点雨

Token Cookie JWT session处理方案 单点登录

架构训练营模块一作业

老实人Honey

架构实战营

松华说|如何快速熟悉和上手业务

松花皮蛋me

打通“任督二脉”:Android 应用安装优化实战

vivo互联网技术

android 打包APK so文件

架构之:serverless架构

程序那些事

系统架构 软件架构 架构设计

Reactive Spring实战 -- 响应式MySql交互

binecy

MySQL 响应式编程 Reactive Spring

在线ASCII流程图编辑器工具

入门小站

工具

两天搞定一个BUG

IT蜗壳-Tango

7月日更

ARTS 日常打卡 - 7

pjw

【Flutter 专题】88 初识状态管理 Bloc (三)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 7月日更

Docker Desktop 收费之后,神网友弄了个替代方案_大数据_InfoQ精选文章