Redian新闻
>
又炫了一把,用 Docker 搭建更酷的本地开发环境

又炫了一把,用 Docker 搭建更酷的本地开发环境

公众号新闻

点击上方“芋道源码”,选择“设为星标

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 10:33 更新文章,每天掉亿点点头发...

源码精品专栏

 
来源:segmentfault.com/a
/1190000043416307

以前要在本地跑一些有意思的工程和实验,都需要通过在本地装上一大堆软件来实现。最近发现有一种更酷的方式:Docker。

用Docker在本地搭建开发环境有一系列显而易见的优势:

  • 不用依赖公司的资源,开发机资源够够的,环境完整可控,想怎么玩怎么玩,不用担心留痕也完全不会影响别人
  • 能够使用标准化的镜像屏蔽掉一切安装过程的坑,不用担心安装过程中出现的各种乱七八糟的报错
  • 虚拟环境想用即用,不想用了随时丢掉,不用操心清理起来很麻烦
  • 镜像的安装方式大大降低了安装门槛,而且在虚拟环境跑服务完全没有任何心理门槛,终于可以在本地把想安装的中间件或者服务跑全了
  • 酷,重点是酷

Docker 搭建的环境为什么能做到以上优势

道理其实很简单,使用 Docker Desktop 在本地起一个虚拟机,然后在虚拟机里跑Docker。这样所有的安装和启停变更都发生在虚拟环境里,自然而然的就带来了以上优势。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 视频教程:https://doc.iocoder.cn/video/

安装基础环境

下载 Docker Desktop,安装过程踩了两个雷:

WSL2 Linux 内核更新包

Docker Desktop requires a newer WSL kernel version

这个报错是字面意思,需要更新内核版本。下载 WSL2 Linux 内核更新包即可:

  • https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi

Docker容器运行需要依赖虚拟化

Hardware assisted virtualization and data execution protection must be enabled in the BIOS

这个报错是因为BIOS里没有把对虚拟化的支持打开,重启进入BIOS,打开虚拟化相关配置即可。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/yudao-cloud
  • 视频教程:https://doc.iocoder.cn/video/

运行你的第一个容器

安装完毕之后就可以用了。Docker Desktop 的首页非常简洁明了。

Guides里有三个示例,大大的 Run,点下去就可以快捷的体验本地服务了。

这里我们启动Nginx试试。

切换到Terminal Tab可以对容器发出指令

这种起服务的方式,我觉得比以前挨个安装软件的方式确实爽太多了。

至此 Docker 所需的环境已经搭建成功了,但是距离我们搭建一个很酷的本地开发环境还差得远。因为还有一连串的问题等着我们。

比如我们再深入玩一下刚才启动的 Nginx 容器,就会发现有很多指令找不到,这对于我们在本地调试是不可接受的。

再比如需要部署到 Nginx 的制品如何与本地文件映射,本地启动多个依赖服务时网络与端口如何管理。以及针对不同的本地开发所需要依赖的资源和服务,可能需要通过自行build docker file的方式才能让他们在本地用起来更加丝滑和酷炫。这些问题,我们留到后文再续。

你在本地做开发的时候,是怎么搭建和管理自己的环境呢?欢迎留言讨论。



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢

已在知识星球更新源码解析如下:

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 101 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
在同事面前炫一把,用 Docker 搭建更酷的本地开发环境卸载 Docker Desktop !事实已证明,它更牛逼。。。陌上花开975 Knock Knock~有空吗,我想和你谈个恋爱 | 罗德岛设计学院,善解人意,美剧粉统计局最新发布!这一把,墨尔本彻底输给了悉尼!构建大模型生态基础设施,你选 Python + Docker 还是 Rust + WebAssembly?| QCon竟然是个大外宣8月最新!McKinsey、BlackRock...200+公司开岗,最快3周拿OfferDocker容器超全详解,别再说不会用Docker了!大温这法律章程竟然帮了业主一把,Airbnb都合法了?!【伦敦港湾London Dock】5.27上海,全新一期首付60万元起!泰晤士河伦敦塔桥顶级住宅!排障有用 | Docker 容器和 Kubernetes 退出码中文指南一。明月初升离大海,求下联。Docker Desktop 4.18 发布,带来了大量新特性10 个优化技巧,减少 Docker 镜像大小《女の生きがい》面试官:如何使用 Dockerfile 去构建自定义的 Docker 镜像?问倒一大片。。。不仅能在大自然中奢侈一把,还能躺着拿绿卡?围绕 transformers 构建现代 NLP 开发环境要命的屁股---东南大学泄密之事的警醒198 道 K8s / Docker / DevOps 面试真题大汇总,2023 最新整理!| 极客时间神器!基于docker渗透测试工具箱Docker 大势已去?Podman 即将崛起 ?为什么不建议在 Docker 中跑 MySQL ?捡漏【欧美原单多功能剪刀】亚*逊在售51元一把!本团2把9.9包邮!一把剪生食,一把剪熟食详解 Docker!大温这法律章程竟然帮了业主一把,家庭旅馆都合法了?!为了你走遍草原 第十二章太贵?开发环境门槛高?和开发者聊聊苹果 Vision Pro大厂公敌“李跳跳”无限期停止更新;国产集成开发环境工具 CEC-IDE 引关注;华为辟谣网传3.2万名科学家正式移籍 | Q资讯李湘女王诗龄又炫富?520晒10万元玫瑰花熊礼物“演唱会门票”应该说concerts' tickets还是concert tickets?一文搞懂TCP、HTTP、Socket、Socket连接池刘德华身家过亿,看到大姐流落街头,却不肯伸手帮一把,太冷血?Jenkins+Docker 实现一键自动化部署项目!步骤齐全,少走坑路!支持全栈编程语言、随取随用、一键部署,谷歌推出浏览器AI开发环境IDX
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。