本文介绍: Docker:基于容器的服务实例。在这种部署模式下,每个服务实例都运行在其各自的容器中,因此也被称为操作系统级别的虚拟化机制。

目录

前言

Docker

1. docker介绍

2. docker安装

3. docker基本使用

3.1 镜像下载

3.2 操作容器


前言

        虚拟机:基于主机(物理机或虚机)的多服务实例。在该模式下,软件开发人员可以提供单个或多个物理机或虚机,同时在每个主机上运行多个服务实例。 此模式有几种不同的实现形式,其中包括:将每一个服务实例都作为一个单独的进程,或是在同一进程 中运行多个服务实例。

        Docker:基于容器的服务实例。在这种部署模式下,每个服务实例都运行在其各自的容器中,因此也被称为操作系统级别的虚拟化机制。

        使用这一模式时,用户将服务打包为容器镜像。每个容器镜像就是一个文件系统镜像,由应用和运行服 务所需的库构成。有的容器镜像还包括完整的 Linux 根文件系统,有的则更轻量。 以部署 Java 服务为例,构建的容器镜像包括 Java 运行时、Apache Tomcat 服务器、以及编译好的 Java 应用。

        一旦将服务打包为容器镜像,就启动一到多个容器。通常每个物理机或虚拟主机上会运行多个容器,会用到 Kubernetes 或 Marathon 这样的集群管理工具来管理容器。 集群管理工具把主机看做资源池,根据每个容器需要的资源和每个主机上可用的资源来调度容器。 容器的优点与虚拟机类似,服务实例之间完全隔离,也能轻松监控每个容器的资源消耗 。

Docker

1. docker介绍

        Docker是一种开源的容器化平台,它可以让开发者将应用程序及其所有依赖项打包到一个轻量级、可移植的容器中,并在任何地方运行这些容器,无论是在开发、测试还是生产环境中。Docker使用了Linux容器技术来实现这个功能,通过隔离进程、文件系统和网络空间等资源,使得容器内的应用程序可以独立于宿主操作系统而运行。       

Docker三要素 :

  1. Docker仓库:集中存放镜像文件的场所。 仓库分为公开仓库(Public)和私有仓库(Private)两种形式。 最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。           
  2. Docker镜像:一个只读的模板,其中包含了应用程序及其所有依赖项、运行时环境、库和配置文件等。( Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载 一 个已经做好的镜像来直接使用 )
  3. Docker容器:指从Docker镜像创建的运行实例,它可以被启动、停止、重启、删除等。
     

虚拟机与容器的区别: 

  • VM(VMware) 在宿主机器、宿主机器操作系统的基础上创建虚拟层、虚拟化的操作系统、虚拟化的仓 库,然后再安装应用;
  • Container(Docker容器) 在宿主机器、宿主机器操作系统上创建Docker引擎,在引擎的基础上再安装 应用。

2. docker安装

Docker的安装是在虚拟机上操作的,需要的请看👉 http://t.csdnimg.cn/5AVjw

旧版本的docker叫做docker或者docker-engine,如果有安装,先卸载其以及其依赖,新版本的 docker叫做docker-ce

  • docker-ce(社区版,免费)
  • docker-ee(专业版,收费)

1、安装必要的系统工具:

 yum install -y yum-utils device-mapper-persistent-data lvm2

2、配置阿里云Docker Yum源:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

更新yum缓存: yum makecache fast

3、安装docker-CE

yum -y install docker-ce

1)默认安装的是最新版本的稳定版

2)查看版本列表请使用如下命令:

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

3)如果要安装特定版本的 docker-CE 请使用如下命令格式:

yum install docker-ce-

3. docker基本使用

  • 查看服务状态
systemctl status docker

  • 启停服务
systemctl start docker

systemctl stop docker

systemctl restart docker

  • 开机自启
systemctl enable docker

systemctl disable docker
  • 查看宿主机上的镜像

docker images

3.1 镜像下载

不用科学我们下载镜像是非常慢的,所以要配置一个加速器:阿里云登录 – 欢迎登录阿里云,安全稳定的云计算服务平台

安装好之后再进行查看: 

接着下载所需的镜像:

docker pull 镜像名

获取一个 centos 系统的基础镜像可以使用如下的命令:

docker pull centos (未指定版本一般会使用latest(最新的)版本)

docker pull centos:版本号 (或者直接指定版本)

下载Nginx镜像:

再次查看镜像就有东西了:

镜像基本操作:

  • docker rmi 镜像ID/标签
docker rmi centos
docker rmi -f centos:latest

如果提示镜像被使用,需要先停止某个ID的容器,那么要先删除容器再删除镜像。或者强制删除镜像。
正确做法:先删除依赖该镜像的所有容器, 再来删除镜像

  • 重新加载daemon
systemctl daemon-reload

  • 重启docker
systemctl restart docker

  • 搜索镜像
docker search 镜像名称

3.2 操作容器

  • 容器是Docker的另一个核心概念。简单来说,容器是镜像的一个运行实例。
  • 镜像是静态的只读文件,而容器带有运行时需要的可写文件层,同时,容器中的应用进程处于运行状态
  • 创建容器
docker create -it centos:latest
docker create -it --name centos01 centos:latest

centos:latest 即镜像名字:版本(或镜像ID),将使用指定镜像创建容器。

另外,Docker会检查本地是否存在指定的镜像,不存在就从公有仓库下载
 
-it:是两个参数,-i:interactive容器具有交互功能,-t:容器将提供伪终端
–name:指定生成的容器的名字,允许空,如果不指定会自动生成

  • 查看当前的容器
docker ps
docker ps -a

  • 删除容器
docker rm 容器ID
docker rm -f 容器ID
docker rm -f $(docker ps -aq)
  • 进入容器
docker exec -it 容器ID/容器NAME /bin/bash
docker exec -it 容器ID/容器NAME bash (简写)
docker exec -it 容器ID/容器NAME sh (简写)
  • 启动、停止、重启容器
docker start 容器ID|name|name:tag
docker stop 容器ID|name|name:tag
docker restart 容器ID|name|name:tag
  • 退出容器

退出时如果想继续运行容器:按顺序按【ctrl+p + q】
如果不想继续运行:按【ctrl+d】或输入exit

原文地址:https://blog.csdn.net/Justw320/article/details/135542194

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_56830.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注