Docker 安装

在 Mac OS X 系统中,首先你要下载安装包安装:Docker Toolbox

安装过程中,可以选择是否安装 Docker Machine,Docker Compose 等,默认还是全部都安装上的比较方便。

安装好了,相关的东西就都有了。

然后你可以在命令行中跑一个 docker run hello-world 试试。留意下输出的内容。

如果是其他系统,参考官网文档:https://docs.docker.com/engine/installation/ ,安装过程不算特别复杂,Linux 系统留意一下内核版本是否满足 Docker 的要求。

Docker 的使用

当你执行 docker run hello-world 时,Docker 会做这些事情:

  • 检查是否有 hello-world 这个镜像
  • 没有的话从 Docker Hub 下载这个镜像
  • 把镜像加载到容器中并且运行

我们还可以再跑一下官方提供的简单例子:docker run docker/whalesay cowsay boo-boo

Docker 命令

Docker 提供了很多命令来管理镜像和容器,我们可以使用 --help 来查看帮助详情,这里提及几个常用的。

  • docker images 查看本地有哪些镜像可以使用的。
  • docker rmi <image name> 可以用来删除某个特定的镜像。
  • docker ps -a 可以用来查看所有的容器,包括运行中的和已经停止的。
  • docker restart/start/stop <container name> 启动或者停止某个容器。
  • docker logs 查看一个容器的日志。

值得注意的是,docker run 是运行一个镜像,所以每一次跑都会创建一个新的容器,如果你并不是需要多个容器的话,使用 docker start/restart/stop/kill 来管理。

run 和 exec

如果我们需要一个 node 镜像,可以使用 docker run node 来运行,如果本地没有该镜像,会下载安装。

下载安装之后,我们可以使用 docker run -a stdin -a stdout -i -t node node 来进入运行中的 node 容器的 node REPL 环境。

docker run 命令可以携带很多参数来帮助你处理更多的需求,可以使用 docker <command> --help 来获取某个特定命令的相关帮助,例如 docker run --help

我们也可以使用 docker exec --help 来看一下 exec 命令的相关描述,run 用于运行某一个镜像,但是当你需要进入某个运行中的容器去执行某一些命令时,你需要使用 exec,例如,在 ubuntu 容器中输出 $PATH 变量:

docker exec -it ubuntu echo $PATH

你也可以使用 exec 来进入到某个容器中的 bash 来管理容器内容:

docker exec -it ubuntu bash

更多相关内容可以参考官方文档:

【Mac】Docker安装及基础使用的更多相关文章

  1. Docker 安装和基础用法

    理解Docker(1):Docker 安装和基础用法 本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 ...

  2. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  3. Docker安装及基础使用

    Docker 安装 在 Mac OS X 系统中,首先你要下载安装包安装:Docker Toolbox 安装过程中,可以选择是否安装 Docker Machine,Docker Compose 等,默 ...

  4. Docker 安装入门 --基础镜像

    安装Docker1.Docker命令安装 yum install docker //安装docker包 service docker start //设置服务启动  chkconfig docker ...

  5. Mac Docker安装MySQL5.7

    mkdir mysql 在~目录下创建mysql目录 docker run --restart=always --name mysql5.7 -p 3306:3306 -v ~/mysql:/var/ ...

  6. docker安装和基础操作

    docker安装 yum install docker 配置镜像下载加速器 curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh ...

  7. Docker安装及基础命令

    一.docker安装 1.安装docker #关闭防火墙和selinux systemctl stop firewalld.service setenforce 0  ​ #安装依赖包 yum ins ...

  8. Docker安装及基础知识

    一.安装 & 启动 1.安装Docker [root@tokyo ~]# yum install docker 2.启动Docker服务 (1)旧式的 sysv 语法 [root@tokyo ...

  9. Mac Docker安装Redis4.0

    mkdir redis 在~目录下创建redis目录 docker run -d -p 6379:6379 -v $PWD/redis:/data -d --name redis4.0 redis:4 ...

随机推荐

  1. 开源图形数据库Neo4j介绍与安装

    图形数据库是以图形结构形式存储数据的数据库. https://neo4j.com/ Java 编写 保存为节点以及节点之间的关系 Neo4j 的数据由下面几部分构成: 节点 边 属性 无论是顶点还是边 ...

  2. C++ 的一个问题的理解(私有变量成员)

    class CExample { public: CExample(){pBuffer=NULL; nSize=;} ~CExample(){delete pBuffer;} CExample(con ...

  3. Qt中delete的问题

    最近项目遇到了一个bug,压力测试ui总会崩溃,gdb调试未果,跑到了库函数,无从查起: (gdb)bt #0 0x4146b1e4 in QWidgetPrivate::drawWidget(QPa ...

  4. 什么是事务(transaction)?它有什么好处

    为了完成对数据的操作,企业应用经常要求并发访问在多个构件之间共享的数据.这些应用在下列条件下应该维护数据的完整性(由应用的商务规则来定义): 分布式访问一个单独的数据资源,以及从一个单独的应用构件访问 ...

  5. 写给大忙人的JavaSE 8 - 学习

    前面有提到过lambda和函数式接口,但是JavaSE 8 除了这两个新特性之后还提供了很多有用的东西.例如Stream. 摸索了几天,终于弄明白Stream的应用了. 先推荐一篇文章:Java 8 ...

  6. Android camera 竖直拍照 获取竖直方向照片

    竖直拍照 if (Integer.parseInt(Build.VERSION.SDK) >= 8) {     camera.setDisplayOrientation(90); } else ...

  7. DB2多行转一行【XML方式】

    分组然后合并,然后去除XML标签 SELECT replace(replace(replace(xml2clob(xmlagg(xmlelement(name A, [字段]))),'</A&g ...

  8. JS中document对象详解

    转自:http://www.cnblogs.com/andycai/archive/2010/06/29/1767351.html 对象属性 document.title //设置文档标题等价于HTM ...

  9. R语言hist绘图函数

    hist 用于绘制直方图,下面介绍每个参数的作用: 1)x: 用于绘制直方图的数据,该参数的值为一个向量 代码示例: data <- c(rep(1, 10), rep(2, 5), rep(3 ...

  10. Java动态代理-->Spring AOP

    引述要学习Spring框架的技术内幕,必须事先掌握一些基本的Java知识,正所谓“登高必自卑,涉远必自迩”.以下几项Java知识和Spring框架息息相关,不可不学(我将通过一个系列分别介绍这些Jav ...