博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MacOS Docker安装及使用
阅读量:6799 次
发布时间:2019-06-26

本文共 4456 字,大约阅读时间需要 14 分钟。

hot3.png

MacOS Docker 安装

Homebrew 安装

macOS 我们可以使用 Homebrew 来安装 Docker。

Homebrew 的 Cask 已经支持 Docker for Mac,因此可以很方便的使用 Homebrew Cask 来进行安装:

# 安装命令brew cask install docker==> Satisfying dependencies==> Downloading https://download.docker.com/mac/stable/28905/Docker.dmg######################################################################## 100.0%==> Verifying SHA-256 checksum for Cask 'docker'.==> Installing Cask docker==> Moving App 'Docker.app' to '/Applications/Docker.app'.?  docker was successfully installed!

从应用中找到 Docker 图标并点击运行,点击 Next,可能会询问你的 macOS 登陆密码,你输入即可。之后会弹出一个 Docker 运行的提示窗口,状态栏上也有有个小鲸鱼的图标

手动下载安装

如果需要手动下载,请点击以下链接下载 Stable 或 Edge 版本的 Docker for Mac。

如同 macOS 其它软件一样,安装也非常简单,双击下载的 .dmg 文件,然后将鲸鱼图标拖拽到 Application 文件夹即可。

图片描述

从应用中找到 Docker 图标并点击运行。可能会询问 macOS 的登陆密码,输入即可。

点击顶部状态栏中的鲸鱼图标会弹出操作菜单。

图片描述

刚安装完,可能会看到安装成功的界面

启动终端后,通过命令可以检查安装后的 Docker 版本

~ docker versionClient: Docker Engine - Community Version:           18.09.0 API version:       1.39 Go version:        go1.10.4 Git commit:        4d60db4 Built:             Wed Nov  7 00:47:43 2018 OS/Arch:           darwin/amd64 Experimental:      falseServer: Docker Engine - Community Engine:  Version:          18.09.0  API version:      1.39 (minimum version 1.12)  Go version:       go1.10.4  Git commit:       4d60db4  Built:            Wed Nov  7 00:55:00 2018  OS/Arch:          linux/amd64  Experimental:     false  ~ docker --versionDocker version 18.09.0, build 4d60db4~ docker -vDocker version 18.09.0, build 4d60db4

镜像加速

鉴于国内网络问题,后续拉取 Docker 镜像十分缓慢,我们需要配置加速器来解决,网易的镜像地址:http://hub-mirror.c.163.com

在顶部状态栏点击 鲸鱼图标 -> Perferences... -> Daemon -> Registry mirrors。在列表中填写加速器地址即可。修改完成之后,点击 Apply & Restart 按钮,Docker 就会重启并应用配置的镜像地址了。

图片描述

之后我们可以通过 docker info 来查看是否配置成功

~ docker info...Registry Mirrors: http://hub-mirror.c.163.com/Live Restore Enabled: falseProduct License: Community Engine

Docker 使用

常用命令

查看版本信息

# 查看docker相关信息docker info# 查看版本信息docker -v 或者 docker --version# 查看Client和Server版本信息docker version

docker run 命令

Docker 允许你在容器内运行应用程序, 使用 docker run命令来在容器内运行一个应用程序。

docker run ubuntu:15.10 /bin/echo "Hello world"

各个参数解析:

  • docker: Docker 的二进制执行文件。
  • run:与前面的 docker 组合来运行一个容器。
  • ubuntu:15.10指定要运行的镜像,Docker首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。
  • /bin/echo "Hello world": 在启动的容器里执行的命令

以上命令完整的意思可以解释为:Docker 以 ubuntu15.10 镜像创建一个新容器,然后在容器里执行 bin/echo "Hello world",然后输出结果。

docker run -i -t ubuntu:15.10 /bin/bash

各个参数解析:

  • -t:在新容器内指定一个伪终端或终端
  • -i:允许你对容器内的标准输入 (STDIN) 进行交互
  • -d:让容器在后台运行
  • -P:将容器内部使用的网络端口映射到我们使用的主机上
  • 可以通过 -p 参数来设置不一样的端口

此时我们已进入一个 ubuntu15.10系统的容器

在容器中运行命令 cat /proc/version和ls分别查看当前系统的版本信息和当前目录下的文件列表

root@37017c93983f:/# lsbin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  varroot@37017c93983f:/# cat /proc/versionLinux version 4.9.125-linuxkit (root@659b6d51c354) (gcc version 6.4.0 (Alpine 6.4.0) ) #1 SMP Fri Sep 7 08:20:28 UTC 2018root@37017c93983f:/#

通过运行exit命令或者使用CTRL+D来退出容器

启动容器(后台模式): 使用以下命令创建一个以进程方式运行的容器

docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"

查看命令

# 查看当前运行的容器docker ps# 查看所有容器,包括停止的docker ps -a# 查看最新创建的容器,只列出最后创建的docker ps -l# 查看网络端口docker port [容器ID|容器名]# 查看容器内部的标准输出docker logs [容器ID|容器名]# 查看容器内部运行的进程docker top [容器ID|容器名]# 查看 Docker 的底层信息。它会返回一个 JSON 文件记录着 Docker 容器的配置和状态信息docker inspect [容器ID|容器名]

docker stop 命令

使用docker stop 命令来停止容器

docker stop [容器ID|容器名]

docker start 命令

已经停止的容器,可以使用命令 docker start [容器ID|容器名] 来启动

正在运行的容器,可以使用 docker restart [容器ID|容器名] 命令来重启

docker rm 命令

# 删除容器,删除容器时,容器必须是停止状态docker rm [容器ID|容器名]# 删除所有的容器docker rm $(docker ps -aq)

Docker容器使用

Docker 客户端

直接输入 docker 命令来查看到 Docker 客户端的所有命令选项

通过命令 docker command --help 更深入的了解指定的 Docker 命令使用方法

Docker 镜像使用

当运行容器时,使用的镜像如果在本地中不存在,docker 就会自动从 docker 镜像仓库中下载,默认是从 Docker Hub 公共镜像源下载

列出镜像列表

# 列出本地主机上的镜像~ docker imagesREPOSITORY      TAG           IMAGE ID            CREATED             SIZEubuntu          15.10         9b9cb95443b5        2 years ago         137MBtraining/webapp latest        6fae60ef3446        3 years ago         349MB

各个选项说明:

  • REPOSITORY:表示镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像ID
  • CREATED:镜像创建时间
  • SIZE:镜像大小

同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,如ubuntu仓库源里,有15.10、14.04等多个不同的版本,我们使用 REPOSITORY:TAG 来定义不同的镜像

~ docker run -t -i ubuntu:15.10 /bin/bash root@6939a46db5bb:/#

如果不指定一个镜像的版本标签,例如只使用 ubuntu,docker 将默认使用 ubuntu:latest 镜像

获取一个新的镜像

当我们在本地主机上使用一个不存在的镜像时 Docker 就会自动下载这个镜像。如果我们想预先下载这个镜像,我们可以使用 docker pull 命令来下载它

查找镜像

# 搜索镜像docker search 镜像名

转载于:https://my.oschina.net/u/2935389/blog/3002575

你可能感兴趣的文章
bzoj千题计划105:bzoj3503: [Cqoi2014]和谐矩阵(高斯消元法解异或方程组)
查看>>
Mybatis学习(4)输入映射、输出映射、动态sql
查看>>
java设计模式-策略模式
查看>>
iOS随笔记录
查看>>
objective-c面向对象
查看>>
Windows 7下Git SSH 创建Key【待解决?】
查看>>
阿里云服务器Linux CentOS安装配置(七)域名解析
查看>>
最长公共前缀---简单
查看>>
课程引言作业一
查看>>
like 大数据字段 查询慢
查看>>
JSON 数据格式
查看>>
Django----解决跨域
查看>>
SQL聚合函数
查看>>
Eclipse配色方案
查看>>
字符编码,文件处理
查看>>
Nginx配置文件解析
查看>>
Deep learning:二十六(Sparse coding简单理解)
查看>>
STL中rotate算法的理解
查看>>
KnockOutJs初次体验
查看>>
数据库中函数
查看>>