【实战】Docker 入门实战一:ubuntu 和 centos 安装Docker
Docker是什么
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低
从这个解释我们不知道大家有没有想到一个优点类似的东西,没错就是 Vagrant : vagrant打造跨平台可移动的开发环境 ,那么这两个东西有什么区别咧?
Docker 与 Vagrant的区别
从字面意思上来讲,这两个东西都可以实现虚拟化。Vagrant 是基于Virtualbox等虚拟机软件的实现的(Vagrant 本身并不提供虚拟技术,只是调用Virtualbox等提供的接口,进行虚拟机的管理),而Docker是基于LXC轻量级容器虚拟技术。一般我们用Vagrant来部署开发环境,Docker一般是部署生产环境,当然docker也可以部署开发环境了。但是Vagrant 部署生产环境就不行了,因为Docker比较轻量级,Vagrant就有点重
Docker的应用场景
Web 应用的自动化打包和发布。
自动化测试和持续集成、发布。
在服务型环境中部署和调整数据库或其他的后台应用。
Ubuntu安装Docker
心动不如行动,让我们在实际体验中来感受其中的不同吧,安装步骤可以参考:https://docs.docker.com/engine/installation/linux/ubuntu/
配置信息
环境:Vagrant启动的虚拟机
系统:Ubuntu 16.04
内存:2G
设置apt允许https源
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
添加Docker的官方Key
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
验证下
$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22
添加源
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
高潮安装
$ sudo apt-get update
$ sudo apt-get install docker-ce #ce版本,企业版需要付费的
特别注意,如果是安装在生产环境,你需要安装指定版本的,而不是最新版本的,操作如下
$ apt-cache madison docker-ce docker-ce | 17.03.1~ce-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
docker-ce | 17.03.0~ce-0~ubuntu-xenial | https://download.docker.com/linux/ubuntu xenial/stable amd64 Packages
$ sudo apt-get install docker-ce=<VERSION>
试试成效
$ sudo docker run hello-world
卸载Docker
执行如下命名就够啦
$ sudo apt-get purge docker-ce
$ sudo rm -rf /var/lib/docker
CentOS7安装Docker
由于新版本的Docker更换了发行版的仓库,以及包名,安装也和以前不太一样,最好是卸载旧版本。
卸载旧版本
旧版本的Docker的软件包名为docker或docker-engine。如果以前安装过就要卸载:
sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
另外原来/var/lib/docker/目录下的镜像,容器,数据卷,网络等都会保留,新安装的docker任然可以使用这些内容。
操作环境
操作系统:CentOS7.2
内存:1GB
CPU:2核
准备工作
安装一些必要的系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加软件源信息:
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新 yum 缓存:
sudo yum makecache fast
高潮安装
sudo yum -y install docker-ce
sudo service docker start #启动服务
卸载
sudo yum remove docker-ce
sudo rm -rf /var/lib/docker
参考资料
ubuntu安装文档:https://docs.docker.com/engine/installation/linux/ubuntu/
centos安装文档:https://docs.docker.com/install/linux/docker-ce/centos/
原文地址:【实战】Docker 入门实战一:ubuntu 和 centos 安装Docker
标签:docker vagrant 虚拟机 virtualbox linux centos ubuntu docker-ce
智能推荐
- virtualbox + ubuntu虚拟机 目录共享
- 【ionic】Mac IOS下真机调试
- Virtualbox 虚拟机支持硬件摄像头
- MacOS High Sierra 引起 VirtualBox Vagrant 同步慢
- 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World
【实战】Docker 入门实战一:ubuntu 和 centos 安装Docker的更多相关文章
- ubuntu和centos安装docker
一. UBUNTU系统上 1. 卸载旧版本(新系统不用执行) sudo apt-get remove docker docker-engine docker.io 2. 安装docker st ...
- ubuntu 和 CentOS 安装docker
一.ubuntu14.04 安装docker 1 apt-get update2 apt-get update-grup3 reboot4 检查mapper的安装:ls -l /sys/class/m ...
- ubuntu 12.04 安装Docker 实战
2016-3-8 从网络服务商那里申请到一台Ubuntu测试服务器,用来测试安装Docker环境. 注:本人初学Docker,对Linux命令也仅是稍稍了解,如有错误,烦请告知. 查看系统相关信息 可 ...
- Ubuntu 20.04安装Docker
Docker学习系列文章 入门必备:十本你不容错过的Docker入门到精通书籍推荐 day1.全面的Docker快速入门教程 day2.CentOS 8.4安装Docker day3.Windows1 ...
- Ubuntu 上如何安装Docker
Docker 是一个开源项目,为开发者和系统管理员提供了一个开放的平台,在任何地方通过打包和运行应用程序作为一个轻量级的容器.Docker 在软件容器内自动部署应用程序.Docker 最开始由 Sol ...
- CentOS安装docker,及其基本操作
CentOS安装docker,及其基本操作 一.安装docker Docker要求运行在Centos 7上,要求系统为64位,系统内核版本3.10以上 1.uname -an 查看当前系统版本 2.y ...
- Redhat/Ubuntu/Windows下安装Docker
Redhat/Ubuntu/Windows下安装Docker 什么是Docker Docker是Docker.inc公司开源的一个基于LXC技术之上构建的Container容器引擎,基于Go语言并遵从 ...
- centos安装docker容器
centos安装docker容器 系统环境需求 docker要运行在centos7系统中,系统为64位机器上,内核最小版本在3.10以上 如果系统为centos6,后面有附带的安装方法 uname - ...
- CentOS 安装 Docker CE
准备工作 系统要求 Docker CE 支持 64 位版本 CentOS 7,并且要求内核版本不低于 3.10. CentOS 7 满足最低内核的要求,但由于内核版本比较低,部分功能(如 overla ...
随机推荐
- GC调优在Spark应用中的实践[转]
作者:仲浩 出处:<程序员>电子刊5月B 摘要:Spark立足内存计算,常常需要在内存中存放大量数据,因此也更依赖JVM的垃圾回收机制.与此同时,它也兼容批处理和流式处理,对于程序 ...
- 法线从object space到eye space的转换((normal matrix)
对于顶点来说,从object Space转换到eye space, 使用model-view矩阵就好了.那么顶点的法线是否也可以直接使用model-view矩阵转化? 通常情况下是不行的. 如下两张图 ...
- Java知多少(20)变量的作用域
在Java中,变量的作用域分为四个级别:类级.对象实例级.方法级.块级. 类级变量又称全局级变量或静态变量,需要使用static关键字修饰,你可以与 C/C++ 中的 static 变量对比学习.类级 ...
- python+selenium+unnittest框架
python+selenium+unnittest框架,以百度搜索为例,做了一个简单的框架,先看一下整个项目目录结构 我用的是pycharm工具,我觉得这个工具是天使,超好用也超好看! 这些要感谢原作 ...
- (原)Android在子线程用handler发送的消息,主线程是怎么loop到的?
来自知乎:https://www.zhihu.com/question/48130951?sort=created 大家都知道Android的Looper是ThreadLocal方式实现,每个线程 ...
- Guava学习笔记(二):基础(Joiner,Objects,Splitter及Strings)
添加Maven依赖 JoinerTest import com.google.common.base.Joiner; import org.junit.Assert; import org.junit ...
- AOP 切入点表达式
8.切入点表达式 现在我们介绍一下最重要的切入点表达式: 如上文所说,定义切入点时需要一个包含名字和任意参数的签名,还有一个切入点表达式,就是* findById*(..)这一部分. 切入点表达式的格 ...
- [Bayes] Improve HMM step by step
以下是HMM,当emission probability变为高斯时,只需改变其中相关部分即可,也就是下图最后一行. 如下可见,在优化过程中套路没有太大的影响,但变为高斯后表达变得更精确了呢. 当然,这 ...
- 怎样利用Heartbeat与Floating IP在Ubuntu 14.04上创建高可用性设置
提供 ZStack社区 内容简单介绍 Heartbeat是一款开源程序,负责将集群基础设施容量--包括集群成员与消息收发--交付至客户server. Hearbeat在高可用性server基础设施其中 ...
- 8 -- 深入使用Spring -- 5...1 启用Spring缓存
8.5.1 启用Spring缓存 Spring配置文件专门为缓存提供了一个cache:命名空间,为了启用Spring缓存,需要在配置文件中导入cache:命名空间. 导入cache:命名空间之后,启用 ...