容器管理之--Docker概述

1、Docker概述
Docker是使用最广泛的开源容器引擎,一种操作系统级别的虚拟化技术,依赖linux内核特性,一个简单的引用程序打包工具。
2、Docker组成
Docker Client 客户端
Docker Daemon
Docker Images
Docker Container
Docker Registry
3、容器VS虚拟化

container VM
启动级别 秒级 分钟级
运行性能 接近原生系统 5%左右损耗
磁盘占用 MB GB
数量 成百上千 几十台
隔离性 进程级 系统级,更彻底
操作系统 主要支出linux 几乎所有平台
封装承担 只打包项目代码和依赖关系,共享宿主机的内核 完整的操作系统

4、应用场景
(1)应用程序打包和发布
(2)应用程序隔离
(3)持续集成
(4)部署微服务
(5)快速搭建测试环境
(6)提供PaaS(平台即服务)
5、安装
官方文档:docs.docker.com
(1)卸载旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
(2)使用存储库安装
在新主机上首次安装Docker Engine - Community之前,需要设置Docker存储库。之后,您可以从存储库安装和更新Docker。

设置存储库
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

使用以下命令设置稳定存储库。
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

(3)安装DOCKER ENGINE - 社区
yum install docker-ce docker-ce-cli containerd.io

(4)启动docker服务,并设置开机启动
systemctl start docker
systemctl enable docker

如果有离线部署的需求,可用二进制包安装,
(1)下载二进制包:
https://download.docker.com/linux/static/stable/x86_64/

(2)使用该tar实用程序提取存档
$ tar xzvf /path/to/<FILE>.tar.gz

(3)将二进制文件移动到可执行文件路径上的目录中,例如/usr/bin/。如果跳过此步骤,则必须在调用docker或dockerd命令时提供可执行文件的路径。

$ sudo cp docker/* /usr/bin/

(4)启动Docker守护程序
$ sudo dockerd &
如果需要使用其他选项启动守护程序,请相应地修改上述命令,或者创建并编辑该文件/etc/docker/daemon.json 以添加自定义配置选项。

(5)通过运行hello-world 映像验证Docker是否已正确安装。
$ sudo docker run hello-world

原文地址:https://blog.51cto.com/liwenjia/2430683

时间: 2024-11-04 12:23:45

容器管理之--Docker概述的相关文章

docker一: 镜像与容器管理

Docker的优势: 1.启动非常快,秒级实现. 2.资源利用率高,在机器中以进程的方式存在,一台机器可以跑上百个docker容器. 3.创建和配置后可以在任意地方运行docker,只需将其上传到docker仓库,用到时拉下来就可以 4.易迁移,平台依赖性不强. Docker的主要概念: 1.镜像:只读模板,类似于安装系统用到的iso文件,对于镜像我们可以自定义,比如在一台机器上安装好lnmp环境,然后打包成为一个镜像,那么后期只需要从仓库中把这个镜像拉下来就可以直接使用lnmp环境了,非常方便

docker技术剖析--镜像、容器管理

防伪码:博观而约取,厚积而薄发                                 docker技术剖析--镜像.容器管理 一.Docker简介 Docker是什么? Docker的英文本意是"搬运工",在程序员的世界里,Docker搬运的是集装箱(Container),集装箱里装的是任意类型的App,开发者通过Docker可以将App变成一种标准化的.可移植的.自管理的组件,可以在任何主流系统中开发.调试和运行. 说白了,docker是一种用了新颖方式实现的轻量级虚拟机,

Docker背后的容器管理——Libcontainer深度解析

Libcontainer 是Docker中用于容器管理的包,它基于Go语言实现,通过管理namespaces.cgroups.capabilities以及文件系统来进行容器控制.你可以使用Libcontainer创建容器,并对容器进行生命周期管理. 容器是一个可管理的执行环境,与主机系统共享内核,可与系统中的其他容器进行隔离. 在2013年Docker刚发布的时候,它是一款基于LXC的开源容器管理引擎.把LXC复杂的容器创建与使用方式简化为Docker自己的一套命令体系.随着Docker的不断发

[CoreOS 转载] CoreOS实践指南(七):Docker容器管理服务

转载:http://www.csdn.net/article/2015-02-11/2823925 摘要:当Docker还名不见经传的时候,CoreOS创始人Alex就预见了这个项目的价值,并将其做为CoreOS支持的第一套应用程序隔离方案.本文将主要介绍在具体的场景下,如何在CoreOS中恰当地管理Docker容器. 注:本文首发于CSDN,转载请标明出处. [编者按]在“漫步云端:CoreOS实践指南”系列的前几篇文章中,ThoughtWorks的软件工程师林帆主要介绍了CoreOS及其相关

docker镜像与容器管理(二)

镜像: 静态的只读文件,是一个只读的模板. 容器: 是从镜像创建的一个运行实例,容器是带有运行时需要的可写文件层. 镜像工作原理:     启动一个新的容器时,docker会加载镜像,在镜像之上添加一个读写层,     并将镜像中的目录复制一份到/var/lib/docker/containers/容器ID的目录下,     容器内修改已存在的文件,会将该文件从只读层复制到读写层,并覆盖只读层的文件,实现了文件系统隔离,     当删除容器后,读写层的数据将会删除,镜像不变. 镜像文件存储:  

Docker 镜像与容器管理(2)

title: Docker 镜像与容器管理(2) date: 2018-12-14 17:04:05 tags: Docker categories: Docker copyright: true --- Docker是基于Go语言实现的开源容器项目,Docker让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口,Docker诞生于2013年年初,最初发起者是dotCloud公司.D

docker概述与安装及运行容器

传统虚拟化 传统虚拟化步骤 1.安装虚拟化软件以及虚拟化的管理软件 2.创建虚拟机 3.给虚拟机安装os 4.在虚拟机内部不是应用(http.db之类的应用) 传统虚拟化的特点 1.VM与VM之间是完全隔离的,并且虚拟机必须要安装os 2.应用所运行的环境是建立在操作系统之上的 3.应用迁移非常笨重 传统虚拟化已经无法满足当前敏捷开发方式,VM的方式会导致开发环境和生产环境不一致,版本测试完成之后需要重新搭建环境. docker docker是容器的引擎工具,最主要是管理容器的生命周期,创建容器

docker容器管理和数据管理

1.概念 容器类似于一个linux环境,是通过镜像创建启动的,可以理解为在镜像的最上一层创建一个可读写层,镜像本身是只读的,容器的读写不会改变镜像. 2.容器管理 2.1容器的创建 #docker run -itd --name nginx1 nginx:latest基本的创建携带 i t d这三个参数即可,表示的意义分别如下:-i: 以交互模式运行容器,通常与 -t 同时使用:-d: 后台运行容器,并返回容器ID:-t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用: nginx1和n

docker之docker-compose——容器管理

nginx镜像制作实战 docker容器的主业 docker理念里,容器启动时,应当为它指定主业是什么,如nginx容器主业就是nginx代理服务,tomcat容器就是web服务等等 1.容器创建时,必须指定主业任务,如不指定,则容器无事可干立即退出. 2.在dockerfile打包镜像时,可以使用cmd命令来指定一个默认的主业,如下: 3.既然镜像里是默认主业,即意味着创建容器时,可以覆盖此默认命令,如下 推荐的ENTRYPOINT方式 1.镜像本身应该有稳定的主业,应当指定后即不能更改用途,