软件行业流行这样一个说法,由于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开发环境的更多相关文章

  1. 企业应用架构研究系列二十八:身份认证 Beginning Out With IdentityServer4

    在.Netcore 技术栈中,一直在使用了开源组件IdentityService4进行身份管理,其功能的强大和易用性的确很受开发者喜欢,但是最近其开源组织Duende Software 开始对其进行商 ...

  2. 企业应用架构研究系列二十六:信号量SemaphoreSlim与Semaphore

    在进行多线程程序的开发和设计的过程中,不可避免的需要引入semaphore信号量这个组件,这是.net框架提供的一个对多线程计数互斥的方案,就是允许指定的线程个数访问特定的资源而增加的 一个" ...

  3. 企业应用架构研究系列二:MSF&Scrum 项目管理

    从业软件项目这么多年,在企业应用开发项目中,项目能否成功,是否能按照项目计划有效的推进,是有很强的一套项目管理理论.最早的时候,接触的项目管理的方法论就是微软的MSF(Microsoft Soluti ...

  4. 企业应用架构研究系列二十七:Vue3.0 之环境的搭建与Vue Antd Admin探索

    开发前端需要准备一些开发工具,这些工具怎么安装就不详细描写了,度娘一些很多很多.主要把核心的开发工具列表一些,这些资源也是非常容易找到和安装的. Node 安装:https://nodejs.org/ ...

  5. Web 前端开发精华文章集锦(jQuery、HTML5、CSS3)【系列十九】

    <Web 前端开发精华文章推荐>2013年第七期(总第十九期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各种增强网站用户体验的 jQuery 插件,展示前沿的 HTML5 和 C ...

  6. Android进阶(十九)AndroidAPP开发问题汇总(三)

    Android进阶(十九)AndroidAPP开发问题汇总(三) Java解析XML的几种方式: http://inotgaoshou.iteye.com/blog/1012188 从线程返回数据的两 ...

  7. [eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置

    [eShopOnContainers 学习系列] - 02 - vs 2017 开发环境配置 https://github.com/dotnet-architecture/eShopOnContain ...

  8. 学习ASP.NET Core Razor 编程系列十九——分页

    学习ASP.NET Core Razor 编程系列目录 学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二——添加一个实体 学习ASP.NET ...

  9. Katalon系列十九:元素相同或无法定位时的定位技巧

    经常看到有人问元素属性都相同,怎么定位,这里总结一下.下面以Xpath为例讲解,CSS其实也是一样的,只是语法不一样罢了.网上说CSS会比Xpath快一些,但在Katalon主用Xpath,感觉也还行 ...

随机推荐

  1. VUE3 之 动画与过渡的实现 - 这个系列的教程通俗易懂,适合新手

    1. 概述 光环效应告诉我们: 当一个人在某一方面取得了巨大的成功,人们就会给他贴上正面的标签,这个人从此就被"优秀"的光环所笼罩,他做的一切,人们都认为是正确的. 例如:越是名气 ...

  2. 如何通过pid定位是哪个容器

    此时,我有一个pid为28117的进程,通过pdwx命令,无法找到他所在的目录,此时我判定他是docker容器 pwdx 28117 输出如下 28117: / 通过docker ps -q命令,获取 ...

  3. Linux爱情故事之如何以不一样的姿势(ssh)进入她的心

    文章目录 1.ssh是谁,为什么要进入她的心 2.如何正确的扒拉ssh 2.1.ssh的常用参数 2.2.您配钥匙吗?(ssh生成公钥或者秘钥) 2.3.我要单向畅通无阻的进入你的心(ssh-copy ...

  4. CPU优化之平均负载率之辅助工具

    前面介绍了平均负载均衡的一些内容,那实际应用中如何查看,分析性能瓶颈呢?下面介绍相关的辅助工具. 一.stress stress是Linux 系统压力测试工具,其通过异常进程模拟平均负载升高的场景(前 ...

  5. 微服务从代码到k8s部署应有尽有系列(七、支付服务)

    我们用一个系列来讲解从需求到上线.从代码到k8s部署.从日志到监控等各个方面的微服务完整实践. 整个项目使用了go-zero开发的微服务,基本包含了go-zero以及相关go-zero作者开发的一些中 ...

  6. 【转】VMWare中的Host-only、NAT、Bridge

    背景:A是本机,A1,A2是虚拟机,B是外部联网的机器 host-only(主机模式): A可以和A1,A2互通,A1,A2 -> B不可以,B -> A1,A2不行 bridge(桥接模 ...

  7. Python 随机(random)模块的不可预测之美

    1 . 概念 1.1 真.伪随机数 大部分的计算机语言都会提供 API 生成随机数,此类 API 称为随机数生成器. 计算机可以用随机数模拟现实世界中的各种随机概率问题,没有随机生成器的编程语言不是& ...

  8. 用eclipse写jsp报以下错误

    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <%@ tag ...

  9. 关于python的turtle详解(转载)

    详解文章见turtle--海龟绘图--python3.10.2文档

  10. 【C#版本】微信公众号模板消息对接(一)(图文详解)

    特此说明:本篇文章为个人原创文章,创作不易,未经作者本人同意.许可等条件,不得以任何形式搬运.转载.抄袭(等包括但不限于此手段)本文章,否则保留追究有关侵权人责任的权利 一.认识微信公众号模板消息 什 ...