企业应用架构研究系列十九:Docker开发环境
软件行业流行这样一个说法,由于Docker 技术的成熟和该技术被广大厂商的普遍应用,成就了微服务领域的快速成长,衍生了云原生技术和公有云的进一步推广。我个人认为Dockers 技术、微服务技术、云原生技术乃至领域模型概念其实是彼此相互相吸,互相依赖,组成了当今软件行业的一个新的生态链。作为软件行业从业者,虽然不能精通每一项新兴技术,但是我们要对主流技术应保持一颗积极探索的心。
本章节开始对Dockers领域的技术探索之路开始总结,之前身处项目,没有太多精力对它进行全面总结,但是,软件开发人员对技术的研究和总结是应该保持的良好习惯。

闲话少说,开始Docker 探索的的一个步骤,Docker 环境的搭建。首先我们需要在本地开发环境安装Docker 的运行环境,我的开发环境是Windows 10 ,开发工具使用的是VS2022。
第一步安装 Docker Desktop for Windows, 可以从官网(https://www.docker.com/get-started)直接下载,Windows10 需要最新的企业版本或专业版本,安装的过程中需要安装WSL2(它支持适用于 Linux 的 Windows 子系统在 Windows 上运行 ELF64 Linux 二进制文件)。安装过程基本比较简单,都是One By One. 此处就省略了,特别强调一点,第一次启动的时候特别慢,不要担心,是Docker Desktop 进行更新和检查所需组件,并进行相关的自动配置。

安装完毕后,启动界面如上图,就可以在本地进行开心的玩耍Docker了。本篇文章不再对docker 的专业名词进行解释,可以自行进行度娘。如果你有Linux环境,最后使用Linux环境进行搭建,安装过程也是非常简单,此处不再描述了。Docker Desktop 工具有一个可视化的界面,左侧菜单分别为容器、镜像、卷标三大常规操作提供界面,适合初学者,但,不建议开发人员使用该界面,而是建议大家使用Powershell进行操作。由于安装了WSL2 和Docker 环境,Powershell 里面就可以使用Bush风格的命令了,其实就是Bush操作命令。在Powershell 运行 docker run -d -p 80:80 docker/getting-started 命令就可以下载并允许了你的第一个Docker 容器了。

开发环境正常运行起来了,我们后续就可以将自己的代码打包成Docker镜像,发布到本地的环境,我们也可以将开发好的镜像发布到DockerHub 上面或者Azure 上面的企业自己的容器注册表,可参考文档:https://docs.microsoft.com/zh-cn/azure/container-registry。

Docker Desktop 工具是对个人和小型企业免费的,我们也可以使用Docker Desktop 进行K8s 环境在本地搭建,后续文章我对K8s 的搭建和配置进行详细描述,本章节只先粗略的对本地dockers开发环境搭建进行了描述,希望能够帮助你dockers开心研究之旅。
企业应用架构研究系列十九:Docker开发环境的更多相关文章
- 企业应用架构研究系列二十八:身份认证 Beginning Out With IdentityServer4
在.Netcore 技术栈中,一直在使用了开源组件IdentityService4进行身份管理,其功能的强大和易用性的确很受开发者喜欢,但是最近其开源组织Duende Software 开始对其进行商 ...
- 企业应用架构研究系列二十六:信号量SemaphoreSlim与Semaphore
在进行多线程程序的开发和设计的过程中,不可避免的需要引入semaphore信号量这个组件,这是.net框架提供的一个对多线程计数互斥的方案,就是允许指定的线程个数访问特定的资源而增加的 一个" ...
- 企业应用架构研究系列二:MSF&Scrum 项目管理
从业软件项目这么多年,在企业应用开发项目中,项目能否成功,是否能按照项目计划有效的推进,是有很强的一套项目管理理论.最早的时候,接触的项目管理的方法论就是微软的MSF(Microsoft Soluti ...
- 企业应用架构研究系列二十七:Vue3.0 之环境的搭建与Vue Antd Admin探索
开发前端需要准备一些开发工具,这些工具怎么安装就不详细描写了,度娘一些很多很多.主要把核心的开发工具列表一些,这些资源也是非常容易找到和安装的. Node 安装:https://nodejs.org/ ...
- Web 前端开发精华文章集锦(jQuery、HTML5、CSS3)【系列十九】
<Web 前端开发精华文章推荐>2013年第七期(总第十九期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HTML5 和 C ...
- Android进阶(十九)AndroidAPP开发问题汇总(三)
Android进阶(十九)AndroidAPP开发问题汇总(三) Java解析XML的几种方式: http://inotgaoshou.iteye.com/blog/1012188 从线程返回数据的两 ...
- [eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置
[eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置 https://github.com/dotnet-architecture/eShopOnContain ...
- 学习ASP.NET Core Razor 编程系列十九——分页
学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...
- Katalon系列十九:元素相同或无法定位时的定位技巧
经常看到有人问元素属性都相同,怎么定位,这里总结一下.下面以Xpath为例讲解,CSS其实也是一样的,只是语法不一样罢了.网上说CSS会比Xpath快一些,但在Katalon主用Xpath,感觉也还行 ...
随机推荐
- Word 模板注入
要实现word模板注入,需要一个被注入的文档,以及一个注入用的模板. 1.创建一个启用宏的模板 打开word,alt+f8创建编辑宏,在Project->Microsoft Word对象 ...
- C#的in/out关键字与协变逆变
C#提供了一组关键字in&out,在泛型接口和泛型委托中,若不使用关键字修饰类型参数T,则该类型参数是不可变的(即不允许协变/逆变转换),若使用in修饰类型参数T,保证"只将T用于输 ...
- python-对于一个用例有多个步骤,转换成1条案例的处理方法
前言 对于前文写到的以excel数据驱动的框架中,每个用例都是单独的不依赖其他的案例,现在一个用例可能会有多个步骤,按照前面写道的博文中按excel表中逐行取出excel的值,那么一条用例有多个步骤, ...
- Win10 装好 Hyper-V 又要将其卸载方法记录
现需要在 windows 上安装虚拟机使用 linux 系统,遂想起来 win10 本身就有 Hyper-V 虚拟工具,但是 win10 家庭版并没有这个服务,百度之,找到了方法(Win10家庭版怎么 ...
- 【C# 线程】 延迟初始化
1. 简介 1.延迟初始化出现于.NET 4.0,主要用于提高性能,避免浪费计算,并减少程序内存要求.也可以称为,按需加载. 2.从net 4.0开始,C#开始支持延迟初始化,通过Lazy关键字,我们 ...
- windows 应用商店常用软件
QuickLook 这个应用可以让你,用空格键查看几乎任何文件的信息. 例如快速查看图片,播放视频,阅读 PDF 等等,支持的格式多到吓人. Python 没错,就是那个非常火的编程语言,Pytho ...
- MySQL 学习笔记(二)MVCC 机制
之前在讲 MySQL 事务隔离性提到过,对于写操作给读操作的影响这种情形下发生的脏读.不可重复读.虚读问题.是通过MVCC 机制来进行解决的,那么MVCC到底是如何实现的,其内部原理是怎样的呢?我们要 ...
- 5.注入内部Bean
我们将定义在 <bean> 元素的 <property> 或 <constructor-arg> 元素内部的 Bean,称为"内部 Bean". ...
- Qt:QList、QStringList
QList 0.说明 QList<T> 一个QList是存储相同类型一组数据的列表. QStringList是从QList<String>继承而来,并添加了一些好用的方法,如j ...
- vue项目环境搭建(webpack4从零搭建)--仅个人记录
一.nodejs环境搭建 首先需要下载node.js(推荐直接官网找最新的版本),下载完成后会自带npm包管理工具,打开cmd命令行界面,输入npm -v .node -v检查node.js与npm是 ...