1.安装docker

检查有没有curl

which curl

如果没有用以下命令可安装:sudo apt-get install curl

通过官方提供的脚本安装最新docker

curl -sSL https://get.docker.com | sh

检测docker是否安装成功:sudo docker run hello-world 如果成功将显示:Hello from Docker!.......

当然你也可能跟我一样,遇到错误:docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.

执行:sudo service docker start启动docker服务再运行就可以看到效果了

在国内访问镜像仓库还是很慢的,可以使用阿里云提供的加速器,执行以下命令就可以了:

curl -sSL http://acs-public-mirror.oss-cn-hangzhou.aliyuncs.com/docker-engine/internet | sh -
具体可访问:https://dev.aliyun.com/search.html

在docker中有几个重要的概念:镜像和容器、数据卷

镜像:就像是虚拟机的快照,它很小很小,可以通过镜像创建容器,它是一个静态的概念,镜像拥有唯一ID,以及一个供人阅读的名字和标签对。镜像可以命名为类似ubuntu:latest、ubuntu:precise、django:1.6、django:1.7等等。

容器:就是我们程序真正运行的地方,可以把容器看作是虚拟机,但这个比喻并不恰当,因为容器占用资源特别小,容器里可以运行多个进程,但最好是一个容量里只运行一个进程,因为容器的本质是用来隔离进程环境的依赖的。在容器结束运行后,容器将会还原至容器原来的状态,也就是在容器运行过程中所做的修改大部分会被还原,但不是所有的都被还原,如数据卷等。容器也有一个唯一的ID和一个供人阅读的名字。

数据卷:前面说到容器在终止运行后会还原到原来的状态,而数据卷就是用来保存那些不要被还原的东西,如状态,程序运行中产生的数据等,他会永久保留除非被主动删除。数据卷保存在宿主计算机上,你可以指定他的目录,或使用默认路径。

列出你的镜像:docker images

从镜像上创建一个容器:docker run --rm -ti ubuntu /bin/bash

  如果你本地没有此镜像docker会从registry上下载此镜像

  --rm是指docker运行的进程一查结束,就删除容器

  -ti 是指分配一个伪终端并进入交互模式

  ubuntu就是你要创建容器所基于的镜像

  /bin/bash是要运行的命令

  在运行run命令时,可以指定链接,卷,端口等

2.docker info显示docker的信息

3.sudo docker pull busybox 下载busybox镜像,busybox是一个最小的linux系统

4.sudo docker run busybox /bin/echo hello 运行busybox

5.docker help显示帮助

6.docker stop $sample_job停止

7.docker restart $sample_job 重新启动容器

8.docker rm $sample移除容器

9.docker commit $sample_job job1 将容器的状态保存为镜像

10.docker images 显示所有镜像

11.docker history (image_name)查看镜像的历史版本

12.docker attach container

  与运行中的容器交互,并观察容器内进程的运行状况,退出容器可用:CTRL+C或CTRL+/(会显示进程堆栈)

13.docker diff container

  列出容器内发生的变化文件和目录,变化包括:A=add D=delete C=change

14.docker events

  打印容器实时系统事件

15.docker import <url>

  导入远程文件,本地文件和目录

16.docker export

  容器的系统文件打包成tar文件

17.docker cp container:path hostpath

  从容器内复制文件到宿主机器的指定目录

18. docker inspect container/image

  收集容器和镜像的底层信息,如:

  容器实例的IP

  端口绑定列表

  特定端口映射的搜索

  收集配置的详细信息

19.docker kill [options] container

  发送SIGKILL信号来停止容器的主进程

20.docker rmi image

  移除一个或多个镜像

docker基本用法和命令的更多相关文章

  1. 学习Docker之Dockerfile的命令

    使用Dockerfile去构建镜像好比堆积木.使用pom去构建maven项目一样,有异曲同工之妙,下面就把Dockerfile中主要的命令介绍一下. 组成部分 部分 命令 基础镜像信息 FROM 维护 ...

  2. Docker 安装与常用命令

    目录 Docker 安装 1)安装 2)启动 3)镜像加速器 Docker 常用命令 1)Docker 进程相关命令 2)Docker 镜像相关命令 docker search:查找镜像仓库中的镜像 ...

  3. Docker镜像与容器命令(转)

    Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括VMs(虚拟机).bare metal. ...

  4. [转]Docker(三):Dockerfile 命令详解

    本文转自:https://blog.csdn.net/ityouknow/article/details/79600406 上一篇文章Docker(二):Dockerfile 使用介绍介绍了 Dock ...

  5. [js高手之路]深入浅出webpack教程系列1-安装与基本打包用法和命令参数

    [js高手之路]深入浅出webpack教程系列索引目录: [js高手之路]深入浅出webpack教程系列1-安装与基本打包用法和命令参数 [js高手之路]深入浅出webpack教程系列2-配置文件we ...

  6. centos7下安装docker(17docker监控---docker自带监控命令)

    Docker自带的监控子命令 1.docker ps:docker ps -a这是我们常用的查看容器状态的命令 docker  container ls和docker ps的功能一样 2.docker ...

  7. Docker(三):Dockerfile 命令详解

    上一篇文章Docker(二):Dockerfile 使用介绍介绍了 Dockerfile 的使用,这篇文章我们来继续了解 Dockerfile ,学习 Dockerfile 各种命令的使用. Dock ...

  8. Docker 入门指南——常用命令

    前面已经介绍了 Docker 的安装方式,本文总结一下使用 Docker 的基本概念和常用命令. 基本概念 镜像 Image 镜像是一些打包好的已有的环境,可以被用来启动和创建容器 容器 Contai ...

  9. Docker(4):Dockerfile命令一览

    1.FROM 指定基础镜像 FROM 指令用于指定其后构建新镜像所使用的基础镜像.FROM 指令必是 Dockerfile 文件中的首条命令,启动构建流程后,Docker 将会基于该镜像构建新镜像,F ...

随机推荐

  1. 如何正确设置 Informix GLS 及 CSDK 语言环境

    本文介绍 GLS 相关知识,说明如何正确设置 Informix GLS 语言环境相关变量(DB_LOCALE,CLIENT_LOCALE),保证 Informix 数据库服务器.客户端能正确的支持中文 ...

  2. SQL 使用序列

    SQL 使用序列 序列是根据需要产生的一组有序整数:1, 2, 3 ... 序列在数据库中经常用到,因为许多应用要求数据表中的的每一行都有一个唯一的值,序列为此提供了一种简单的方法. 本节阐述在 My ...

  3. jquery与javescript的区别(一)

    一.找元素: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /&g ...

  4. Course Selection CodeChef - RIN

    All submissions for this problem are available. Read problems statements in Mandarin Chineseand Russ ...

  5. 【BZOJ4563】[Haoi2016]放棋子 错排+高精度

    [BZOJ4563][Haoi2016]放棋子 Description 给你一个N*N的矩阵,每行有一个障碍,数据保证任意两个障碍不在同一行,任意两个障碍不在同一列,要求你在这个矩阵上放N枚棋子(障碍 ...

  6. IE edge是怎么了??

    IE edge 怎么不能通过$.getJSON(url,function(data){ alert(''); });获取数据呢?,其他浏览器和IE的10以下版本都没问题获取到了,这是什么情况!本来是想 ...

  7. Exchange Port

    Get-POPSettings-110 Get-IMAPSettings-143 Exchange Network Port References Exchange Server 2000 http: ...

  8. Buffer Data

    waylau/netty-4-user-guide: Chinese translation of Netty 4.x User Guide. 中文翻译<Netty 4.x 用户指南> h ...

  9. Spark 源码分析 – BlockManagerMaster&Slave

      BlockManagerMaster 只是维护一系列对BlockManagerMasterActor的接口, 所有的都是通过tell和askDriverWithReply从BlockManager ...

  10. crontab下设置ntpdate的问题

    1.在crontab里设置了ntpdate 同步时间,一段时间发现没有起作用 原来的写法是 20 00 × × × ntpdate cn.pool.ntp.org 单独拿出来执行也是没问题的,最近好好 ...