转载请标明出处:

https://blog.csdn.net/forezp/article/details/80098675

本文出自方志朋的博客

本系列教程翻译于docker文档,文档地址:https://docs.docker.com/ ,由于某些原因,docker官方文档通常都是打不开,如果打不开,安装完docker之后,可以拉取docker文档的镜像在本地跑。安装docker完成后,输入一下命令:

docker run -it -d -p 4000:4000 docs/docker.github.io:latest

在浏览器上打开localhost:4000就可以看docker 的文档了。

本系列教程的翻译于2018年4月份,当时的docker版本为V18.03

Docker的相关概念

Docker 是一个为开发者和运维者去开发、发布和在容器中运行应用的平台。使用Linux容器来部署应用程序被称为容器化。 容器不是新的概念,它的优势在于很容易发布一个应用。

容器化变得非常的流行,因为容器化具有以下的优点:

  • 灵活:即使最复杂的应用也能够被容器化。
  • 轻量:容器最大化利用和分享主机的内核。
  • 可互换:你可以即时部署更新和升级应用。
  • 便捷:你可以在本地构建应用,并部署到容器云,并在任何地方运行。
  • 可扩展: 你可以增加和自动分发容器的个数。
  • 可堆叠:您可以垂直堆叠服务并即时堆叠服务。

镜像和容器

容器是通过运行一个镜像来启动的。镜像是一个可执行程序包,其中包含运行应用程序所需的所有内容 - 代码,运行时库,环境变量和配置文件。

容器是一个镜像的运行时实例,容器是一个在内存中运行的镜像(这就是,一个镜像有了状态,或者一个用户进程)。你可以通过像linux环境敲打一个docker ps来查看一系列正在运行的容器。

容器和虚拟机

一个容器是在linux服务本地运行,并和其他的容器共享主机的内核。它运行在一个独立的进程中,相对于其他可执行的进程(比如虚拟机)来说,容器的内存占用空间更小,更加的轻量化。

相比之下,虚拟机(VM)运行一个完整的“客户”操作系统,通过虚拟机管理程序虚拟访问主机资源。 一般来说,虚拟机提供的环境比大多数应用程序需要的资源更多。

准备你的Docker环境

安装docker请看官方网站。

centos安装:

yum -y install docker-io

启动:

service docker start

更多系统的安装请看官网。

测试Docker版本

  1. 运行 docker --version 命令,并确保你安装的Dokcer版本支持改命令:

docker --version
Docker version 17.12.0-ce, build c97c6d6
  1. 运行docker info (docker version 没有–)命令,查看更多的docker的安装信息。
docker info

Containers: 0
Running: 0
Paused: 0
Stopped: 0
Images: 0
Server Version: 17.12.0-ce
Storage Driver: overlay2
...

测试docker安装成功

  1. 运行一个简单的docker镜像(hello world)来测试docker 安装成功了。
docker run hello-world

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
ca4f61b1923c: Pull complete
Digest: sha256:ca0eeb6fb05351dfc8759c20733c91def84cb8007aa89a5bf606bc8b315b9fc7
Status: Downloaded newer image for hello-world:latest Hello from Docker!
This message shows that your installation appears to be working correctly.
...

2.列出在你机器上下载的hello world镜像。

docker image ls
  1. 列出退出的hello-world容器(由镜像产生)。如果它仍在运行,则不需要–all选项:
docker container ls --all

CONTAINER ID     IMAGE           COMMAND      CREATED            STATUS
54f4984ed6a8 hello-world "/hello" 20 seconds ago Exited (0) 19 seconds ago

命令回顾


## List Docker CLI commands
docker
docker container --help ## Display Docker version and info
docker --version
docker version
docker info ## Execute Docker image
docker run hello-world ## List Docker images
docker image ls ## List Docker containers (running, all, all in quiet mode)
docker container ls
docker container ls --all
docker container ls -aq

总结

使用Docker,扩展应用程序的过程就是启动新的可执行文件,而不是运行繁重的VM主机。




扫码关注公众号有惊喜

(转载本站文章请注明作者和出处 方志朋的博客

Docker官方文档翻译1的更多相关文章

  1. Docker官方文档翻译之入门

    转自:http://www.cnblogs.com/vikings-blog/p/3958091.html Docker学习总结之docker入门 Understanding Docker 以下均翻译 ...

  2. docker官方文档翻译5

    转载请标明出处: https://blog.csdn.net/forezp/article/details/80244682 本文出自方志朋的博客 堆栈(Stacks) 准备工作 安装Docker 1 ...

  3. docker官方文档翻译4

    转载请标明出处: https://blog.csdn.net/forezp/article/details/80186178 本文出自方志朋的博客 第四篇:Swarms 准备工作 安装Docker版本 ...

  4. docker官方文档翻译3

    转载请标明出处: https://blog.csdn.net/forezp/article/details/80171723 本文出自方志朋的博客 第三部分: 服务 准备工作 安装Docker 1.1 ...

  5. Docker官方文档翻译2

    转载请标明出处: https://blog.csdn.net/forezp/article/details/80158062 本文出自方志朋的博客 容器 准备工作 安装Docker,版本为1.13或者 ...

  6. Ubuntu安装Docker(官方文档翻译)

    翻译自Docker官方文档 https://docs.docker.com/engine/installation/linux/ubuntulinux/ 之前因为看不懂官方文档,卡在某个步骤无法完成安 ...

  7. 关于Docker官方CentOS镜像无法启动mysqld的总结

    很多童鞋反映,在Docker官方CentOS镜像中安装了Mysql server后,无法正常启动. 无法正常启动表现为两种情况: 1> 初始完数据库后,mysqld启动报错 2> syst ...

  8. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)中一些知识点

    Flume官方文档翻译--Flume 1.7.0 User Guide (unreleased version)(一) Flume官方文档翻译--Flume 1.7.0 User Guide (unr ...

  9. Flume官方文档翻译——Flume 1.7.0 User Guide (unreleased version)(二)

    Flume官方文档翻译--Flume 1.7.0 User Guide (unreleased version)(一) Logging raw data(记录原始数据) Logging the raw ...

随机推荐

  1. 【Ubuntu】设置静态ip地址

    一.Ubuntu16.04设置静态IP1.获取网卡的名字   ip route show 2.获取网卡的名字 vim /etc/network/interfaces auto ens33 iface ...

  2. [转]ASP.NET MVC中的两个Action之间值的传递--TempData

    本文转自:ASP.NET MVC中的两个Action之间值的传递--TempData 一. ASP.NET MVC中的TempData 在ASP.NET MVC框架的ControllerBase中存在 ...

  3. 文档碎片DocumentFragment

    文档碎片是什么? 参考标准的描述,DocumentFragment是一个轻量级的文档对象,能够提取部分文档的树或创建一个新的文档片段,换句话说有文档缓存的作用. createDocumentFragm ...

  4. Javascript “等于”

    JavaScript支持“=”.“==”和“===”运算符. 我们应当理解这些(赋值.相等.恒等)运算符之间的区别,并在编码过程中小心使用. == equality 等同,用于一般比较,在比较的时候可 ...

  5. C#IO流文件操作

    文件流 创建文件流 读写文件的第一步就是创建文件流,流是一个用于数据传输的个对象,它是FileStream类型,在创建一个文件流是需要在他的构造中指定参数 语法: FileStream 文件流对象=n ...

  6. kafka自定义序列化器

    <kafka权威指南> Customer.java public class Customer { private int customId; private String custome ...

  7. C#简单实现读取txt文本文件并分页存储到数组

    最近做一个VR项目,需要把某个中草药的介绍信息分页显示到unity场景里然后用VR手柄切换信息. unity的脚本是c#,就先在本地写了个代码测试了一下,利用控制台测试输出,到时候拷贝函数过去再结合交 ...

  8. STL库中string类内存布局的探究

    在STL中有着一个类就是string类,他的内存布局和存储机制究竟是怎么样的呢? 这就是建立好的string 可以看出,图中用黄色框框标注的部分就是主要区域 我们用来给string对象进行初始化的字符 ...

  9. 创建简单的node服务器

    昨天咱们说了封装ajax,今天咱们说一下 自己创建一个建议的node服务器: 话不多说直接上代码: var http = require('http') //对URL 解析为对象//1.导入模块 UR ...

  10. Facebook 新开源了 2 个东西,一个语音识别系统(wav2letter++)和一个机器学习库(flashlight)

    Open sourcing wav2letter++, the fastest state-of-the-art speech system, and flashlight, an ML librar ...