一零零七、Docker快速入门

Docker是基于Go语言实现的云开源项目。

目录

Docker概述

CentOS7安装Docker

卸载

Docker常用命令

容器命令

Docker概述

        Docker的主要目标是“Build,Ship and Run Any App,Anywhere”,也就是通过对应用组件的封装、分发、部署、运行等生命周期的管理,使用户的APP(可以是一个WEB应用或数据库应用等等)及 其运行环境能够做到“一次镜像,处处运行”

        将应用打包成镜像,通过镜像成为运行在Docker容器上面的实例,而 Docker容器在任何操作系统 上都是一致的,这就实现了跨平台、跨服务器。只需要一次配置好环境,换到别的机子上就可以一键部署好,大大简化了操作。

CentOS7安装Docker

确定版本

#确定Linux版本是CentOS7及以上版本(且当前为root用户)
cat /etc/redhat-release
#结果如下
CentOS Linux release 7.9.2009 (Core)#小版本号不必一致

卸载旧版本

#若曾经安装过,则先卸载旧版本
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

yum安装gcc

#在执行以下步骤前,先确保centos可以连接外网
#yum安装gcc相关
yum -y install gcc
yum -y install gcc-c++

安装相关软件包

#安装需要的相关软件包
yum install -y yum-utils

镜像加速

#设置stable镜像仓库(相当于国内镜像加速)
yum-config-manager --add-repo http://mirrors.aliyun.com/dockerce/linux/centos/docker-ce.repo

更新yum索引

#更新yum软件包索引
yum makecache fast

安装DOCKER CE

#安装DOCKER CE
yum -y install docker-ce docker-ce-cli containerd.io
  • 安装过程

一零零七、Docker快速入门_第1张图片

  • 安装结果

一零零七、Docker快速入门_第2张图片

启动Docker

#启动docker
systemctl start docker

测试

#查看版本
docker version

一零零七、Docker快速入门_第3张图片

#运行 hello-world 样例测试
docker run hello-world

一零零七、Docker快速入门_第4张图片

卸载

  1. 停止服务
  2. 卸载docker及相关软件
  3. 删除残余文件
  4. 删除本地已存在的容器文件夹
#停止服务
systemctl stop docker
#卸载docker及相关软件
yum remove docker-ce docker-ce-cli containerd.io
#删除残余文件
rm -rf /var/lib/docker
#删除本地已存在的容器文件夹
rm -rf /var/lib/containerd

Docker常用命令

帮助启动类命令

启动docker: systemctl start docker
停止docker: systemctl stop docker
重启docker: systemctl restart docker
查看docker状态: systemctl status docker
开机启动: systemctl enable docker
查看docker概要信息: docker info
查看docker总体帮助文档: docker --help
查看docker命令帮助文档: docker 具体命令 --help

镜像命令

列出本地主机上的镜像:

#docker images [options]:
#列出现有的镜像
docker images
#-a :列出所有本地镜像,(含历史映像层);
docker images -a
#-q :只显示镜像ID(IMAGE ID)
docker images -q
#也可联动使用
docker images -aq 或 docker images -qa

各个选项说明:

REPOSITORY TAG IMAGE ID CREATED SIZE
表示镜像的仓库源 镜像的标签版本号 镜像ID 镜像创建时间 镜像大小

 PS:同一仓库源可以有多个 TAG版本,代表这个仓库源的不同个版本,我们使用REPOSITORY:TAG 来 定义不同的镜像。如果不指定的话,docker默认使用最新版本镜像,例如需要ubuntu,则会使用: ubuntu:latest镜像。

查找所需镜像

#docker search [options] 镜像名称:
#以查找centos为例
docker search centos #将会在 https://hub.docker.com 寻找centos镜像
#--limit N:只列出N个镜像,默认25个
docker search --limit 5 centos #只列出5个与centos相关的镜像

一零零七、Docker快速入门_第5张图片

NAME DESCRIPTION STARS OFFICIAL AUTOMATED
镜像名称 镜像说明 点赞数量 是否是官方的 是否是自动创建的

 下载镜像

#docker pull 镜像名称[:TAG]:
#以下载centos为例
docker pull centos #没有TAG就是下载最新版

一零零七、Docker快速入门_第6张图片

查看各部分所占空间

#docker system df:
docker system df #查看镜像/容器/数据卷所占空间

一零零七、Docker快速入门_第7张图片

删除镜像

#docker rmi [-f] 镜像名字ID:
#-f 为强制删除
docker rmi -f 镜像ID #删除单个
docker rmi -f 镜像名1:TAG 镜像名2:TAG #删除多个
docker rmi -f $(docker images -qa) #删除全部
  • 删除前

一零零七、Docker快速入门_第8张图片

  • 删除后
#以删除centos为例:
docker rmi -f centos:7 centos:latest

一零零七、Docker快速入门_第9张图片

容器命令

新建+启动命令

#docker run [options] IMAGE [COMMAND] [ARG...]
--name="容器新名字" :为容器指定一个名称
#启动守护式容器(后台运行):
-d: 后台运行容器并返回容器ID;
#启动交互式容器(前台有伪终端,等待交互);
-i:以交互模式运行容器,通常与 -t 同时使用;
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;也即
#端口指定
-P: 随机端口映射,大写P
-p: 指定端口映射,小写p

一零零七、Docker快速入门_第10张图片

 

你可能感兴趣的:(docker,hadoop,运维,docker,容器,运维)