Docker第一篇 Get Started

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker第一篇 Get Started相关的知识,希望对你有一定的参考价值。

详见:[docker官网](https://docs.docker.com)

这里我翻译的只是我认为必须了解和掌握的知识:

版本:Docker v17.09

这部分一共六个指南:

1. Docker说明及方向

2. 建立并运行你的第一个应用

3. 将你的应用标准化

4. 跨主机部署你的服务

5. 添加访问者计数器用于保存数据

6. 部署你的swarm到生产环境中

Docker的价值在于:如何buildshiprun 应用,它不关心应用具体做了什么东西。

1.Docker 说明及方向

1. 前要(前提知识)

在了解Docker和为什么用Docker之前你需要了解的概念如下:

 

*     IP Addresses and Ports

*     Virtual Machines

*     Editing configuration files

*     Basic familiarity with the ideas of code dependencies and building

*     Machine resource usage terms, like CPU percentages, RAM use in bytes, etc.

 

2. Docker相关概念

image: 它是轻量的、隔离的、可执行的包,它里面有软件运行所需要的所有的东西,比如:代码、运行、库文件、环境变量和配置文件。

container: 它实际就是image的一个运行的实例,它就是在内存中的镜像。它的运行默认是完全隔离宿主机的环境,当然如果给它权限访

问宿主机的文件和端口也是可以实现的。

容器与宿主机的关系:容器在宿主机的内核上运行应用,也就是比虚拟机更好(因为虚拟机是仅能通过hypervisor来访问宿主机的资源,

container能直接访问,他在宿主机中是一个进程,相对于其他可执行程序来说,它不会占用过多的内存

下图是容器和虚拟机对比

技术分享图片

技术分享图片

虚拟机运行本身的操作系统,与宿主机的系统完全隔离。容器能共享一个宿主机的kernel,容器更像源进程,你能在宿主机上控制这些进程,通过docker ps命令查看这些。同时它包含应用所需要的所有依赖,无配置冲突,所以它能运行在所有任何地方。

3. 安装

版本

Docker版本:CE(社区版)和EE(企业版)

又分为:stableedge版(稳定版和开发版)

CE社区版:适用于初学者及中小型团队

EE企业版:收费的。视情况而定

下图是企业版及社区版的区别

Capabilities

CE

EE-Basic

EE-Standard

EE-Advanced

Container engine and built in   orchestration, networking, security

支持

支持

支持

支持

Certified infrastructure, plugins and ISV   containers


支持

支持

支持

Image management



支持

支持

Container app management



支持

支持

Image security scanning




支持

 

Docker CEEE可以安装在复杂的平台:云和on-premises

桌面版的:

platform

Docker CE X86-64

Docker CE ARM

Docker EE

Mac (macOS)

支持



Windows10)

支持



 

云端:

platform

Docker CE X86-64

Docker CE ARM

Docker EE

Amazon Web Services

支持


支持

Microsoft Azure

支持


支持

 

系统:

platform

Docker CE X86-64

Docker CE ARM

Docker CE IBM Power (ppc64le)

Docker CE IBM Z (s390x)

Docker EE x86_64

Docker EE IBM Power (ppc64le)

Docker EE IBM Z (s390x)

CentOS

支持




支持



Debian

支持

支持






Fedora

支持







Microsoft   Windows Server 2016





支持



Oracle   Linux





支持



Red-Hat   Enterprise Linux





支持

支持

支持

SUSE     Linux Enterprise Server






支持

支持

支持

Ubuntu

支持

支持

支持

支持

支持

支持

支持

 

关于stable更新从Docker 17.03开始每两个月更新一次,而开发版每个月更新一次。

关于你使用哪个平台的Docker可以点击上述的表中的相应版本,就可以跳转到Docker官网相应的版本中。

这里我只介绍CentOS平台的CE版本,关于EE的安装请参考官网。

安装

操作系统的要求:安装CE版本,需要centOS7.X的稳定版本。

同时打开系统的其他源(centos-extras设置为enable)。默认是开启的。如果你关闭了请开启

使用过程中推荐使用overlay2的存储引擎。

 

首先卸载已经安装的旧版本dockerdocker-engine。如果之前安装了,请卸载它及它的相关依赖。

yum remove docker \

                  docker-common \

                  docker-selinux \

                  docker-engine

安装方法:
yum安装

1.      设置Docker的仓库,这里使用的是官方的仓库(官方推荐方法,可以手动的管理更新,当然如果有公司自己开发的Docker版本,可以设置自己的源仓库。)

#安装依赖包:yum-utils提供了yum-config-manager设施,devicemapper存储引擎需要device-mapper-persistent-data和lvm2包。
yum install -y yum-utils device-mapper-persistent-data lvm2
#设置stable仓库
yum-config-manager \
--add-repo https://download.docker.com/linux/centos/docker-ce.repo
#关于使用edge的,这里可以使用yum-config-manager --enable 开启。


2.      安装最新版。

yum install docker-ce


可以使用下面命令安装特定版本

先查有哪些版本

yum list docker-ce --showduplicates | sort -r


安装指定版本(比如安装docker V17.06.1

yum install docker-ce-17.06.1.ce


3.      启动

systemctl start docker

4.      加入开机自启动

systemctl enable docker

5.      验证是否成功

docker run hello-world

安装包安装

下载rpm包。手动安装。对于更新有点不方便。

下载地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

执行rpm -ivh 包名.rpmyum 包名.rpm

 

卸载:yum remove docker-ce rm -fr /var/lib/docker


以上是关于Docker第一篇 Get Started的主要内容,如果未能解决你的问题,请参考以下文章

Docker Get Started VI

Docker Get Started IV

Docker Get Started III

Docker Get Started V

Docker Get Started I

Learn to use XCode 1.GET STARTED IN XCODE Xcode overview