资讯专栏INFORMATION COLUMN

Docker 之 ubuntu 安装

tuantuan / 1970人阅读

摘要:安装更新包索引安装最新版本的和验证使用下面的命令查看的版本然后使用下面的命令可以运行程序,因为中还没有程序的镜像,所以会先下载下来然后运行。

Docker 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟机方式相比具有众多的优势。Docker 可以更高效的利用系统资源更快速的启动时间一致的运行环境持续交付和部署更轻松的迁移更轻松的维护和扩展

博主第一次使用Docker就深深喜欢上了这种方式,一次配置,到处运行,不用再反反复复的配置环境可以说是非常的方便了。本篇博客就来说一说Docker的安装及基本使用方法,后续还会不定时的更新Docker系列博客。

对比传统虚拟机

Docker是什么?Docker属于容器的一种技术封装,提供更为简单易用的使用接口,让开发运维人员可以更方便快捷的使用容器

特性 容器 虚拟机
启动 秒级 分钟级
硬盘使用 一般为 MB 一般为 GB
性能 接近原生 弱于
系统支持量 单机支持上千个容器 一般几十个

从上面对比来看,容器的各方面性能及特性是优于虚拟机的。

Docker 的安装

Docker是一个开放源码的产品,分为 社区版(Community Edition,缩写为 CE)和 企业版(Enterprise Edition,缩写为 EE)。社区版是免费的,而企业版包含一些收费服务,一般来说个人开发者用社区版就足够了,本篇博文的教程也只是针对社区版。

安装环境及版本:

系统:ubuntu 18.04 LTS

Docker 版本:18.9.05

英文好的小伙伴也可以直接阅读官方文档,本文只详细介绍 Ubuntu 系统下的 Docker 安装,其他系统的安装请自行参考官方文档。

Mac

Windows

CentOS

Debian

Fedora

Ubuntu

其他Linux版本

卸载老版本

一般来说Ubuntu系统中默认是不会安装Docker的,但是如果安装了老版本的话可以使用下面的命令进行卸载。

$ sudo apt-get remove docker docker-engine docker.io containerd runc
安装 Docker CE

安装Docker CE有多种不同的方式:

设置Docker的存储库,然后安装。这种方式便于安装及更新,也是最推荐的方式。

下载DEB软件包,手动安装并完全手动管理升级。

在测试和开发环境中,部分用户选择使用自动便捷脚本来安装Docker

本篇博客将介绍第一种安装方式。

设置 Docker 存储库

更新apt包索引:

$ sudo apt-get update

允许apt通过HTTPS使用存储库来安装软件:

$ sudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common

添加Docker官方 GPG 密钥:

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

添加完成之后,使用下面命令进行验证秘钥,通过搜索指纹的最后8个字符,验证现在是否具有指纹9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88的密钥

$ sudo apt-key fingerprint 0EBFCD88

pub   rsa4096 2017-02-22 [SCEA]
      9DC8 5822 9FC7 DD38 854A  E2D8 8D81 803C 0EBF CD88
uid           [ unknown] Docker Release (CE deb) 
sub   rsa4096 2017-02-22 [S]

使用下面的命令去设置稳定版的存储库。

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

安装 Docker CE

更新apt包索引:

$ sudo apt-get update

安装最新版本的 Docker CEcontainerd:

$ sudo apt-get install -y docker-ce docker-ce-cli containerd.io

验证Docker

使用下面的命令查看Docker的版本

$ docker -v

然后使用下面的命令可以运行hello-world程序,因为Docker中还没有hello-world程序的镜像,所以会先pull(下载)下来然后运行。

$ sudo docker run hello-world

如果看到打印 Hello for Docker!说明程序已经运行成功了。

卸载 Docker

卸载 Docker CE

$ sudo apt-get purge docker-ce

主机上的镜像、容器、卷或者自定义配置文件是不会自动删除的,需要使用下面的命令手动删除这些文件:

$ sudo rm -rf /var/lib/docker
Docker 的使用 Docker 的启动、关闭等

可以使用下面的命令对Docker进行启动、关闭、重启等操作。

# 开启 Docker
$ sudo service docker start

# 关闭 Docker
$ sudo service docker stop

# 重启 Docker
$ sudo service docker restart

也可以使用systemctl命令进行操作

# 开启 Docker
$ sudo systemctl start docker

# 关闭 Docker
$ sudo systemctl stop docker

# 重启 Docker
$ sudo systemctl restart docker
iamge 镜像文件

Docker 需要把应用程序及其相关的依赖打包成为一个image镜像文件,这些镜像文件可以存储在云端的存储库中,用户可以将云端的镜像文件下载到本地,然后通过这个文件,生成Docker容器的实例。

所以当你将你的应用程序及其依赖打包成一个image文件之后,可以将其上传到云端的仓库中,然后在任何一个装有Docker的机器中运行即可,这就是一次配置,到处运行,可以说是非常之方便了。

Docker 官方的仓库是 Docker Hub,这是最重要,也是最常用的一个image仓库了。

运行一个程序

下面我们使用上面使用过的hello-world进行说明image的使用。

查看本地image列表

使用下面的命令查看本地已经存在的image文件都有哪些,可以查看这些镜像的名称,标签,镜像ID,被创建时间,镜像大小。

# 查看本地 image
$ sudo docker image ls

下载image到本地

使用下面的命令将image文件从云端下载到本地。

# 下载 image
$ sudo docker pull hello-world

运行image

使用下面的命令可以运行image

$ sudo docker run hello-world

如果看到打印 Hello for Docker!说明hello-world程序已经运行成功了。

删除image

使用下面的命令删除本地的image文件。

# 删除 image
$ sudo docker image rm -f hello-world

其它

关于Docker的知识还有很多,我会在后续的文章继续介绍,欢迎您持续关注本博客。

更多技术文章欢迎关注我的博客主页:http://JemGeek.com

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27814.html

相关文章

  • Docker实战Quick Start

    摘要:如果使用操作系统自带包安装,目前安装的版本是比较旧的。之前版本如果是较低版本的系统,需要先更新内核。然后重复上面的步骤即可。 Quick Start Installation Ubuntu 通过系统自带包安装 Ubuntu 14.04 版本系统中已经自带了 Docker 包,可以直接安装。 $ sudo apt-get update $ sudo apt-get install -y ...

    alaege 评论0 收藏0
  • 浅谈docker

    摘要:另外一个原因是企业文化是否与运动一致,只有企业支持,才能更大地发挥的价值。最后一个原因就是安全性问题,对于这一层的安全的隔离还有待改进,才能进一步得到企业的认可。惠普刘艳凯认为,这也是需要在下一步中改进的一方面。 前言云计算、大数据,移动技术的快速发展,加之企业业务需求的不断变化,导致企业架构要随时更改以适合业务需求,跟上技术更新的步伐。毫无疑问,这些重担都将压在企业开发人员身上;团队...

    MoAir 评论0 收藏0
  • 浅谈docker

    摘要:另外一个原因是企业文化是否与运动一致,只有企业支持,才能更大地发挥的价值。最后一个原因就是安全性问题,对于这一层的安全的隔离还有待改进,才能进一步得到企业的认可。惠普刘艳凯认为,这也是需要在下一步中改进的一方面。 前言云计算、大数据,移动技术的快速发展,加之企业业务需求的不断变化,导致企业架构要随时更改以适合业务需求,跟上技术更新的步伐。毫无疑问,这些重担都将压在企业开发人员身上;团队...

    nidaye 评论0 收藏0
  • Flux7 Docker 系列教程(一):Docker 简介

    摘要:本系列教程翻译自,系列共有九篇,本文译自第一篇。,一种新的容器化技术,因为轻量级和便携化而受到广泛关注。本篇文章是系列教程的第一篇。镜像只读的容器模板,简言之就是系统镜像文件。首先,向发出请求创建一个镜像并且指定容器内要运行的命令。 本系列教程翻译自 Flux7 Docker Tutorial Series,系列共有九篇,本文译自第一篇 Part 1: An Introduction。...

    zhaofeihao 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<