(Docker实战)在CentOS7上使用Docker;(超详细、附图、附代码)

一、Docker的三大组件

      要想使用Docker,就要先了解Docker的一些基本概念,首先要了解的是Docker的三大组件,分别是仓库、镜像、容器;

仓库(也有叫Registry(注册中心))

      Docke中仓库的概念,有点类似与GitHub的仓库的概念,不过GitHub的仓库是存着大量的开源项目,而Docker的仓库存储的是用户构建的镜像,仓库又分为公有仓库和私有仓库;

1、官方公共仓库

      Docker Hub(因为直接使用官方仓库下载镜像,速度有点让人堪忧,所以出现了大量的镜像仓库,大大提升了下载速度)

2、镜像仓库
  1. ustc的镜像(文章中使用的该镜像仓库)
  2. 网易163 docker镜像
  3. daocloud
  4. alicloud

镜像

      如果说仓库类似GitHub的仓库的概念,那么镜像就类似于仓库中的一个个开源项目,全世界的开发人员都可以在仓库中找到合适的镜像(比如redis镜像,centos镜像等)下载到自己的机器上;

容器

      就好像我们在GitHub上下了一个或多个项目,我们可以根据自己的需求,解压,运行,部署这些项目;当我们有了镜像之后,我们就可以通过一些指令让这些镜像运行为一个容器,接着我们可以在容器内部和宿主机(就是你装Docker的机器)进行一些容器的相关操作;

二、Docker的基本使用

Ⅰ、设置镜像仓库

结合Docker的三大组件,我们要使用Docker,就是对这三大组件进行操作,首先,我们需要设置Docker的镜像仓库;
在这里插入图片描述

vi /etc/docker/daemon.json//固定文件名,固定写法
//在文件中输入以下内容
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
//esc退出编辑状态 再使用 shift + : 后输入wq保存退出

Ⅱ、操作镜像

      设置好了镜像仓库,此时我们就可玩玩镜像了,
      1、查看镜像:docker images查看当前本地镜像
在这里插入图片描述

docker images //此时我们机器上应该是没有镜像的

      2、搜索镜像:docker search 镜像名(支持模糊查询)
在这里插入图片描述

docker search redis

3、下载镜像:docker pull 镜像名
在这里插入图片描述

docker pull 镜像名称

4、删除镜像:docker rmi 镜像id
在这里插入图片描述

docker rmi e6cf45bda546 //rmi后是镜像id
//删除所有镜像,基本用不上
docker rmi `docker images -q` 

Ⅲ、操作容器

      当我们下载了我们需要的镜像之后,我们就可以开始创建和使用容器了

1、查看容器

      使用docker ps 查看正在运行的容器
      使用docker ps -a 查看所有容器
      使用docker ps -l 查看最后一次运行的容器
      使用docker ps -f status=exited 查看当前运行状态为exited的容器

2、 创建和启动容器

      A、只创建不运行容器:docker create --name 容器名 镜像名:镜像标签

docker create --name mynginx02 nginx:latest 

      B、创建并运行容器并进入容器的命令行(exit退出命令行后容器就停止运行了)

docker run -ti --name mycentos04 centos:latest
// -t 代表terminal 表示进入命令行
// -i 代表init 代表初始化容器 

在这里插入图片描述
      Notes:以该模式创建的在容器内部命令行执行exit命令时,会停止运行
在这里插入图片描述

      C、创建并后台运行容器

docker run -di --name mycentosDaemon centos:latest 
// -d 代表daemon 表示以守护进程方式启动容器

      D、 在容器后台运行时进入容器内部命令行
      如果我们以守护进程方式启动的容器,或者我们使用docker start 启动的容器;而此时我们要进入容器中进行参数配置或者进行其他操作,此时则需要使用:docker exec -it 容器名或容器id /bin/bash命令

docker exec -it mycentosDaemon /bin/bash

在这里插入图片描述
      E、启动和停止容器
      对于使用docker create和使用docker run -ti 创建并退出的容器,状态是exited,此时我们需要使用docker start 容器名或容器id启动;

docker start  mycentos04 

在这里插入图片描述

3、文件复制与目录同步挂载

      A、文件复制

      宿主机————>容器内
           docker cp 需要拷贝的文件或目录 容器名称:容器目录
      容器内————>宿主机
           docker cp 容器名称:容器目录 需要拷贝的文件或目录

//宿主机————>容器内
docker cp a.txt mycentosDaemon:/usr/wlt/

//容器内————>宿主机
docker cp mycentosDaemon:/usr/wlt/a.txt /usr/wlt/

在这里插入图片描述
在这里插入图片描述
      B、目录同步挂载
      可以将宿主机的某个目录和容器的目录进行同步挂载(即宿主机目录内容改变,容器内对应目录内容发生改变)
      使用docker run -v 宿主机目录:容器目录;


docker run -di -v /usr/test/:/usr/local/test --name=mycentos05 centos:latest 

在这里插入图片描述

4、查看运行中容器的信息

     使用命令: docker inspect + 容器名或容器id
     可以查看容器的一些信息,例如使用了哪个镜像、Ip地址、目录挂载情况等;

docker inspect mycentos05

在这里插入图片描述

总结

本篇主要介绍了docker的基本使用,下一篇主要使用docker进行应用的部署、以及使用dockerFile脚本操作容器以及容器的迁移与备份(因为容器的特性就是便于移植);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值