docker的安装与基本使用

1 docker简介

        这里先对docker做一个简介。Docker ——一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

 

2 安装

        这里介绍的是centos7环境下对于docker的安装,安装分为以下五个步骤。

2.1 更新yum

        这里采用yum去安装docker,所以先将yum更新到最新,命令如下。

sudo yum update

2.2 安装工具与依赖

        使用yum安装docker还需要三个依赖,install的命令如下。

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

2.3 设置阿里云为yum源

        类似使用maven、npm等都需要更改为国内的数据源,否则会连接国外的地址,速度可想而知。更改yum源的命令如下。

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

2.4 install

        安装docker,这里采用的是docker的社区版本docker-ce,它是一个免费版本,而docker的企业版本docker-ee是收费的。命令如下。

sudo yum install docker-ce

2.5 查看docker版本

        安装完成之后,查看docker的版本,若是有正确显示,表示安装已成功,命令如下。

docker -v

 

3 基本使用

        docker有两个重要的概念,一个是镜像,一个是容器,镜像与容器的关系可以类比为面向对象中类与对象的关系,使用docker,先安装镜像到docker,然后运行镜像,这个运行着的东西,称之为容器。

3.1 设置镜像下载地址

        这一个就和maven远程仓库地址类似,必须设置,不然会下载速度会很慢,设置镜像加速器的操作是这样的。

        (1) 编辑/etc/docker/daemon.json(如果没有就创建一个)文件;

vi /etc/docker/daemon.json

     (2)在文件中写入镜像下载的地址,可选的有163、中科大或者阿里的,配置阿里的地址需要在阿里云中查看“容器镜像服务”的地址(免费),阿里云提供的地址下载质量是比较高的。另外,这里有一个163的地址是通用地址,也可以使用。

{ 
    "registry-mirrors": ["http://hub-mirror.c.163.com"] 
}

    (3)重启docker及守护线程,命令如下。

systemctl daemon-reload
systemctl restart docker

3.2 docker启动与停止

        启动docker

systemctl start docker

        停止docker

systemctl stop docker

        重启docker

systemctl restart docker

        查看docker状态

systemctl status docker

        查看docker信息

docker info

        设置开机自动启动docker

systemctl enable docker

 

4 镜像

        docker中镜像的概念可以类比为虚拟机中虚拟文件,docker通过镜像创建容器,容器运行时就是一个运行着的进程。

4.1 查看镜像

        查看镜像列表的命令如下。

docker images

        执行此命令后会出现一个列表,每一列字段表示的含义分别为

        REPOSITORY 镜像名称

        TAG 镜像标签,用于版本的标识

        IMAGE 镜像id

        CREATED 镜像的创建日期,此日期为镜像在远程仓库中创建的日期,而非本地拉取镜像的日期

4.2 搜索镜像

        需要在远程仓库中通过关键字搜索镜像,搜索的命令如下。

docker search 镜像名称

        比如,要搜索centos的镜像,可以执行如下命令。

docker search centos

        执行该命令后,显示的列表各个字段的意义如下。

        NAME 名称

        DESCRIPTION 镜像描述

        STARTS 类似github的STARTS,表示该镜像的热度

        OFFICIAL 是否官方

        AUTOMATED 自动构建,标识镜像是否由Docker Hub自动构建流程创建

4.3 拉取镜像

        拉取镜像是将镜像从远程拉取到本地,命令如下。

docker pull 镜像名称:tag名称

        比如要拉取一个centos的镜像,可以执行如下命令。

docker pull centos:7

        如果不加tag也可,拉取的就是最新版本,比如:

docker pull centos

4.4 删除镜像

        根据镜像的id删除一个镜像的命令如下。

docker rmi 镜像id

        或者,删除所有的镜像可以执行以下命令。

docker rmi `docker images -q`

 

5 容器

        容器是根据镜像创建的,类似于面向对象中根据类创建了对象。

5.1 查看容器

        查看正在运行的容器可以使用以下命令。

docker ps

        查看所有容器(包括已停止的)的命令如下。

docker ps -a

        查看最后一次运行的容器命令如下。

docker ps -l

        查看已停止的容器命令如下。

docker ps -f status=exited

5.2 创建容器

        创建容器有两种方式,一种是以交互式方式创建,一种是以守护式方式创建。

        以交互式方式创建容器在创建容器当前窗口会进入到所创建的容器当中,比如,我要创建一个centos的容器,执行以下命令。

docker run -i -t --name=mycentos centos:7 /bin/bash

       -i表示创建后运行容器;

      -t表示容器启动后会进入它的命令行

      --name=后面的内容是给所创建的容器所起的名字

        以守护式方式创建容器的命令如下。

docker run -d -i --name=mydcentos centos:7

        -d表示以守护式方式创建容器

        -t表示容器启动后会进入它的命令行

        因为是以守护方式创建运行的容器,需要进入到这一个运行的容器,可以执行如下命令。

docker exec -i -t mydcentos /bin/bash

5.3 退出容器

        以交互式方式创建的容器若退出,会停止容器运行;而以守护式方式创建的容器退出后会继续运行。退出容器的命令如下。

exit

5.4 启动容器

        容器在停止后需要启动,可以使用如下命令。

docker start 容器id(或容器名称)

5.5 停止容器

        启动容器后需要停止可以使用如下命令。

docker stop 容器id(或容器名称)

5.6 拷贝文件

        将宿主机中的文件拷贝到docker中可以使用如下命令。

docker cp 需要拷贝的文件或目录 容器名称:容器目录

        将docker中的文件拷贝到宿主机中可以使用如下命令。

docker cp 容器名称:容器目录 需要拷贝的文件或目录

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值