mac docker安装部署_Docker入坑:Docker简介及在Mac下的安装

22de85319cf981218b4c91db3947908e.png

如果你对一个程序员说:你的代码有bug!

他的第一反应是:你的环境是不是有问题,傻X是不是不会用?

如果你委婉地说:你这个程序和预期的有点不一致,是不是我的使用方法或环境配置有问题?

他本能地会想:操!是不是出bug了!

你是不是遇到过自己的程序在本地跑得贼溜,一旦换台机器或部署到使用环境时,就会遇到各种问题?

那就入坑docker吧!

Docker 的基础是 Linux 容器(LXC)等技术。在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单。

dc1f216c2e74acad347e89b7ca7b1e08.png

首先来了解下Docker三个基本概念:

  • 镜像(Image)
  • 容器(Container)
  • 仓库(Repository)

1、镜像(Image)

操作系统分为内核和用户空间。对于 Linux 而言,内核启动后,会挂载 root 文件系统为其提供用户空间支持。而 Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜像 ubuntu:18.04 就包含了完整的一套 Ubuntu 18.04 最小系统的 root 文件系统。

Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。镜像不包含任何动态数据,其内容在构建之后也不会被改变。

2、容器(Container)

镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的 类 和 实例 一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

容器的实质是进程,但与直接在宿主执行的进程不同,容器进程运行于属于自己的独立的命名空间。因此容器可以拥有自己的 root 文件系统、自己的网络配置、自己的进程空间,甚至自己的用户 ID 空间。容器内的进程是运行在一个隔离的环境里,使用起来,就好像是在一个独立于宿主的系统下操作一样。这种特性使得容器封装的应用比直接在宿主运行更加安全。

What is a Container?

A container is a standard unit of software that packages up code and all its dependencies so the application runs quickly and reliably from one computing environment to another.

A Docker container image is a lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries and settings.

0de12e44eaa976b6dbde1c29b095b6b2.png

容器和虚拟机的区别

3、仓库(Repository)

镜像构建完成后,可以很容易的在当前宿主机上运行,但是,如果需要在其它服务器上使用这个镜像,就需要一个集中的存储、分发镜像的服务,Docker Registry 就是这样的服务。

一个 Docker Registry 中可以包含多个 仓库(Repository),每个仓库可以包含多个 标签(Tag),每个标签对应一个镜像。

通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 : 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

以 Ubuntu 镜像 为例,ubuntu 是仓库的名字,其内包含有不同的版本标签,如,16.04, 18.04。可以通过 ubuntu:16.04,或者 ubuntu:18.04 来具体指定所需哪个版本的镜像。如果忽略了标签,比如 ubuntu,那将视为 ubuntu:latest。

Mac下docker的安装

在 macOS 可以使用 Homebrew 来安装 docker,命令如下:

brew cask install docker

e7dc81da4ef705f6b5b1461ebf78152b.png

安装完成后从应用中就可以看到 Docker 图标。

25dbee5652bb75392386f8989d8a1e01.png

点击运行docker。

7fffcec57c2813808f61510ac198f9dd.png

然后可以Terminal中运行下面命令检查docker的相关信息。

检查安装后的 Docker 版本

docker --version

通过 docker info 来查看是否配置成功

docker info

6268679f5d884212c876a68f03fe51c5.png

docker的常用命令如下:

eb5c3c534ebb3a2d5f4f81bb34dd86b0.png

docker的常用命令

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值