Docker六脉神剑 - Mac极速体验

news2024/11/18 11:46:54

说到Docker, 现在可是"家喻户晓"。但是随着Docker的生态越来越强大, 资料越来越多, 反而对新手越来越不友好, 好多人准备学习一下, 但是又不知从哪入手?
想要玩Docker, 首先要先明白, Docker是干嘛的?可以解决什么问题?使用Docker可以解决哪些问题…等等等。
这篇文章为基础内容, Docker玩家可以跳过, 本篇主要针对想学却不了解Docker的小白

如何在Mac Os上面使用Docker?

Mac上面我个人非常喜欢使用brew安装, 实在是太强大了, 对于常见的相关包都能使用它来安装, 并且进行统一管理, 还可以选择可视化应用的安装。

比如我们经常使用到安全上网工具shadowsocksx-ng, 都可以直接进行安装。那么Docker我也直接使用这个来安装。(如果对brew不太了解的小伙伴, 可以先去官网看看使用一下, 非常简单易上手的)

我当然要安装带图形界面的啦。

brew -v                     // 确定已经安装了brew 然后开始骚起来
brew cask install docker    // cask这个参数就是安装图形界面版啦 

等待安装,最后在你的启动台里面出现这个图标就ok了

Docker安装图标

启动一下Docker,在终端输入

docker -v 查看docker版本

Docker version 18.09.2, build 6247962   因为我安装的早一点, 所以大家版本号可能不太一致, 但是没关系 只要不是大版本更新就ok

docker info 查看docker信息 会看到很多相关信息 我们看最后一个。可以知道我们安装的是社区版, Docker有企业版的 比社区版多些东西 个人开发社区版足矣

Product License: Community Engine

Docker基本概念

docker是一个使用GO语言开发的项目, 并且是一个遵从 Apache2.0 协议的开源项目
版本分为 CE(Community Edition: 社区版) 和 EE(Enterprise Edition: 企业版)

我相信, 大多数人都使用过虚拟机, 安装VMware等工具, 可以在我们的系统上安装其它系统, 并且只要你的电脑配置够高, 可以利用虚拟机安装多个系统。
VMware就是利用虚拟化的技术,虚拟化是一种资源管理技术, 是将计算机的各种物理资源, 如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破物理设备结构间的不可切割的障碍,使用户可以比原本的架构更好的方式来应用这些资源。

常见虚拟化:

  • 内存虚拟化
  • 磁盘虚拟化
  • 网络虚拟化
    VMware包含了以上三种虚拟化, VMware在宿主机器上创建了虚拟层, 虚拟化操作系统。但是VMware的缺点也来了, 每次提供镜像, 直到安装成功需要消耗大量的内存, 有的时候我们只想简单的安装一个工具然后测试比较麻烦, 不够轻量, 操作速度慢等, 随即Docker出场了。

Docker也是基于虚拟化技术来实现的, 但是与虚拟机不同的是, Docker是在操作系统上创建Docker引擎, 直接在宿主主机的操作系统上调用硬件资源,而不是虚拟化操作系统和硬件资源,所以操作速度快。

得出结论

  • Docker也是利用虚拟化技术, 但是与其他虚拟化不太一样, Docker是与宿主机共用一个内核
  • Docker也可以创建虚拟系统
  • Docker使用轻量, 并且速度快
    那么Docker是怎么创建虚拟系统的呢?这个时候如果和VMware对比的话

VMware创建系统

  • 下载镜像

  • 然后利用VMware安装
    Docker他也需要镜像, 但是他不是直接利用镜像进行系统安装。Docker安装的系统是基于镜像的, 安装的系统是具有基本操作的, 例如安装应用,这个叫容器。

  • 镜像
    镜像就是一个模版, 可以基于这个镜像创建出很多系统, 可以认为是初始的快照。

  • 容器
    是基于镜像的, 意思就是, 镜像是怎么样的, 我的容器就是怎么样的, 可以通过镜像启动多个容器。这点就类似我们语言里面的对象, 镜像就像我们写的class类, 但是你想使用这个类是不是的new?并且还可以new多个 这个就是容器啦

Docker创建系统

  • 获取镜像、或者自己构建镜像
  • 基于镜像直接创建操作系统

Docker镜像加速配置

前面说到,镜像可以是别人写好的 也可以是自己构建的。但是由于别人写的有些不在国内,所以我们需要配置一下中国的镜像,方便资源拉取。

这里使用到的是阿里云进行镜像加速配置的。进入阿里云控制台, 选择容器镜像服务, 在镜像中心下面有个镜像加速器, 选择Mac。我们选择可视化的Docker配置镜像

docker镜像

复制链接

Docker配置

点开这个之后会看到Daemon, 下面有一个Registry mirrors, 把刚刚复制好的镜像添加进去就可以啦。

那我们该如何应用Docker呢? 请看下一篇,利用Docker来构建我们的开发环境

参考来源:憧憬在 aoppp.com发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/641760.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux中的用户和组的分类

目录 Linux中的用户和组的分类 用户分类 超级用户 系统用户 普通用户 组的分类 基本组(私有组) 附加组(公有组) 系统组 Linux中用户和用户组的配置文件 在Linux中,用户账号、密码、用户组信息和用户组密码均…

【滤波】无迹卡尔曼滤波

本文主要翻译自rlabbe/Kalman-and-Bayesian-Filters-in-Python的第10章节10-Unscented-Kalman-Filter(无迹卡尔曼滤波)。 %matplotlib inline# format the book import book_format book_format.set_style()前文 在上一章中,我们讨论了非线…

Elasticsearch:使用 ELSER 进行语义搜索

Elastic Learned Sparse EncodeR(或 ELSER)是一种由 Elastic 训练的 NLP 模型,使你能够使用稀疏向量表示来执行语义搜索。 语义搜索不是根据搜索词进行字面匹配,而是根据搜索查询的意图和上下文含义检索结果。 本教程中的说明向你…

【QQ界面展示-设置背景图拉伸方式 Objective-C语言】

一、接下来,我们就给大家设一下这个正文的背景图 1.因为我们现在,我们现在看一下, 在我们这个示例程序里面,正文,根据时你发的消息,还是对方发的消息,正文这个背景图,是不一样的, 所以说,这个正文的背景图,也要根据数据来判断, 判断数据里面那个类型是对方,还是…

端口隔离是什么?为什么需要端口隔离、如何实现端口隔离?

目录 一. 什么是端口隔离 二. 为什么需要端口隔离 三. 端口隔离的原理 1. 硬件隔离 2. 软件隔离 四. 端口隔离的实现方法 1. VLAN 2. 网络隔离 3. 防火墙 五. VLAN端口隔离 1. VLAN端口隔离方式 2. VLAN端口隔离配置案例 3. VLAN 端口隔离的注意事项 六. 端口隔离…

【数据库】Mysql数据库初体验

文章目录 一、数据库基本概念1. 数据 (Data)的概念2. 表的概念3. 数据库的概念4. 数据库管理系统5. 数据库系统 二、 数据库的发展1. 第一代数据库2. 第二代数据库3. 第三代数据库 三、主流的数据库介绍1. SQL Server(微软公司产品)2. Oracle &#xff0…

35. QT中执行linux命令或者shell脚本

1. 说明 Qt在linux系统中进行软件开发时,有时需要通过qt调用命令行终端执行一些命令,可以比较快速方便的实现某些功能。在qt中调用命令行终端,相当于启动了另外一个应用程序,此时可以借助Qt提供的辅助类QProcess来实现,当然也有其它的实现方式,因为QProcess使用有很多优…

pytest自动化测试框架基础篇

目录 前言: 一、单元测试框架 二、pytest简介以及常用插件安装 三、pytest默认测试用例的规则以及基础应用 四、pytest跳过测试用例 五、pytest测试用例的前后置,固件 前言: pytest是一个基于Python语言的自动化测试框架,它…

声网云市场 —— 实时互动开发者的 API 商店

声网云市场是面向实时互动开发者的 API 商店,让开发者在使用声网 RTC 的同时,可以快速集成实时互动扩展能力,比如美颜、变声、语音转文字、实时翻译、视频审核、语音审核等等,让开发者专注在业务逻辑和用户体验上,免去…

ESXi 7.0 U3m Lenovo (联想) 定制版 OEM Custom Installer CD

VMware ESXi 7.0 Update 3m - 领先的裸机 Hypervisor (All OEM Customized Installer CDs) ESXi 7.0 U3m Standard (标准版) ESXi 7.0 U3m Dell (戴尔) 定制版 OEM Custom Installer CD ESXi 7.0 U3m HPE (慧与) 定制版 OEM Custom Installer CD ESXi 7.0 U3m Lenovo (联想) 定…

RTX3070安装spconv1.1

系统环境: torch:1.8.1 cuda:11.1 cudnn:8.0.5 cpu:RTX3070 gcc:7.5.0(g 7.5.0,c14需要g5.2以上) cmake:3.18.3(3.13.2及以上) 第一步环境配置 在开始安装前,需要确保已经安装cuda和cudnn。 …

微软 AI 华人先驱黄学东正式宣布离职,将加入 Zoom 担任 CTO

微软华人 AI 版图上一块不可或缺的拼图,现在也离开了。 雷峰网独家获悉,微软 AI 华人先驱黄学东在社交媒体正式宣布从微软离职,将加入 Zoom 担任 CTO。 上世纪六十年代出生的黄学东是与变化共生、在变化中成长的一代人。 1962年&#xff0c…

树和二叉树的基本概念和性质

树和二叉树的基本概念和性质 文章目录 树和二叉树的基本概念和性质树重要概念树和非树是树的必要条件 二叉树二叉树的特点满二叉树与完全二叉树二叉树的性质 二叉树存储形式链式存储二叉链三叉链 顺序存储 树 重要概念 树是递归定义的 节点的度:一个节点含有子树的…

k8s kube-proxy详解

一、kube-proxy简介 kube-proxy是kubernetes中网络核心组件,实现了服务暴露和转发等网络功能。kube-proxy支持userspace,ipvs和iptables三种代理模式。userspace性能问题较严重,基本不再使用,应用最多的是iptables和ipvs模式。 …

关于c++ extern关键字

解释和说明参考: (227条消息) C extern关键字_Candyerer的博客-CSDN博客 (227条消息) 对于C中的extern关键字用法的理解_c extern_Fanfan21ya的博客-CSDN博客 个人写了一个案例,代码结构如下 在总结一下 1.a.cpp文件需要引用b.cpp的文件中的变量或…

一文详解!嵌入式软件的自动化测试框架、测试流程与功能研究分析

目录 引言 1.嵌入式软件自动化测试平台分析 2.嵌入式软件自动化测试平台概要设计 3.嵌入式软件自动化测试平台详细设计 3.3 功能设计 引言 嵌入式软件是指被设计用于嵌入或控制另一个产品、设备或系统的软件。它在各种应用领域(例如消费电子、工业控制、医疗设…

steam搬砖全套操作流程之如何卖货(第③课)

上一篇文章阿阳分享了Steam项目如何选品,今天就给大家说说装备如何发货等重要事项。 本节课主要为大家讲解:定价规则,加价原则,认识装备磨损度和印花,自动发货软件和自动上架软件的讲解。 (Steam装备选品…

ESXi 7.0 U3m Inspur (浪潮) 定制版 OEM Custom Installer CD

VMware ESXi 7.0 Update 3m - 领先的裸机 Hypervisor (All OEM Customized Installer CDs) ESXi 7.0 U3m Standard (标准版) ESXi 7.0 U3m Dell (戴尔) 定制版 OEM Custom Installer CD ESXi 7.0 U3m HPE (慧与) 定制版 OEM Custom Installer CD ESXi 7.0 U3m Lenovo (联想) 定…

在linux系统上运行Stable Diffusion web UI

stable-diffusion-webui项目地址 该项目是一个针对Stable Diffusion模型的浏览器操作界面,基于Gradio。 环境: 在恒源云上租的服务器,操作系统:Ubuntu、显卡:A4000-16G。恒源云官网链接 项目的Readme.md让我们用web…

科二学习笔记

文章目录 一、侧方位停车进库:出库: 二、倒车入库右入库与右出库出库部分:入库部分第一种方法(网络版本):入库部分第二种方法: 左入库与左出库左出库左入库 三、直角转弯(右直角) 练车时间 am 7 ~ 11 pm15 ~ 18 一、侧…