Docker新手入门

杀马特。学长 韩版系。学妹 提交于 2020-01-07 08:28:32

在这里插入图片描述

一 Docker概述

1 概述

1.1 容器

  1. 容器技术已成为应用程序封装和交付的核心技术
  2. 容器技术核心:Cgroups资源管理 NameSpace进程管理 SElinux安全
  3. 由于在物理机上实施隔离,启动一个容器,可以像启动一个进程一样快速

1.2 Docker

  1. Docker是一套完整的容器管理系统
  2. Docker提供一组命令,让用户更加方便直接的使用容器技术,而不需要过多关心底层内核技术

2 Docker特性

六大隔离特性(命名空间)

  1. 命名隔离
  2. 文件系统隔离
  3. 用户认证隔离
  4. 进程隔离
  5. 网络隔离
  6. 信号向量

2.1 Docker优点

  1. 相比于传统虚拟化技术,容器更加简洁高效
  2. 传统虚拟机需要给每个vm安装操作系统
  3. 容器使用的共享公共库和程序

2.2 Docker缺点

  1. 容器的隔离性没有虚拟化强
  2. 共用linux内核,安全性有先天缺陷
  3. selinux难以驾驭
  4. 监控容器和容器排错是挑战

二 部署Docker

1 安装软件

1.1 准备工作

  1. 需要64位操作系统
  2. 至少需要RHEL6.5以上的版本,强烈推荐RHEL7
  3. 推荐关闭防火墙

1.2 安装Docker

1.2.1 配置yum源

mkdir /var/ftp/extras
mount -t ios9660 -o ro,loop RHEL7OSP-extras.iso /var/ftp/extras

[extras]
name=CentOS-$releasever - Extras
baseurl=ftp://192.168.1.254/extras
enabled=1
gpgcheck=0

1.2.2 软件包安装

yum -y install docker
systemctl start docker
systemctl enable docker

三 Docker镜像

1 基本概念

1.1 镜像

  1. 在Docker中容器是基于镜像启动的
  2. 镜像是启动容器的核心
  3. 镜像采用分层设计
  4. 使用快照的cow技术,确保底层数据不丢失
  5. docker images 查看镜像

1.2 Docker hub镜像仓库

官方网站: https://hub.docker.com
可以通过命令行查找镜像
docker search
OFFICIAL ok的是官方包
直接查看官方包
docker search -f is-official=true busybox

2 镜像操作

2.1 下载上传镜像

2.1.1 下载镜像

docker pull docker.io/busybox

2.1.2 上传镜像

docker push docker.io/busybox

2.2 导入导出镜像

2.2.1 导出镜像(导出为tar文件)

在这里插入图片描述
镜像名+标签才能指出唯一镜像,标签选项是TAG
docker save docker.io/busybox:latest -o busybox.tar

2.2.2 导入镜像(通过tar包导入)

docker load -i busybox.tar

2.3 启动镜像

2.3.1 启动centos镜像生成一个容器

docker run -it docker.io/centos:latest /bin/bash

2.3.2 查看容器信息(新开终端)

docker ps
查看命令在哪个包:
yum provides 命令

四 Docker基本命令

1 镜像常用命令

命令 作用
docker images 查看镜像列表
docker history 查看镜像制作历史
docker inspect 查看镜像底层信息
docker pull 下载镜像
docker push 上传镜像
docker rmi 删除本地镜像
docker save 镜像另存为tar包
docker load 使用tar包导入镜像
docker search 搜索镜像
docker tag 修改镜像名称和标签

2 容器常用命令

命令 作用
docker run 运行容器
docker ps 查看容器列表
docker stop 关闭容器
docker start 启动容器
docker restart 重启容器
docker attach 进入容器 直接进入
docker exec 进入容器 新开进程
docker inspect 查看容器底层信息
docker top 查看容器进程列表
docker rm 删除容器

查看软件包
rpm -qf /bin/ls

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!