Docker基本管理

一.Docker概述

因为Docker轻便,快速的特性,可以使应用达到快速迭代的目的。每次小的变更,马上就可以看到效果,而不用将若干个小变更积攒到一定程度在变更。

二.什么是Docker

        如果要方便的创建运行云平台上的应用,必须要脱离底层的硬件,同时还需要任何时间地点可获取这些资源,这正是Docker所能提供的。Docker的容器急速可以在一台主机上轻松为任何应用创建一个轻量级的,可移植的,自给自足的容器。通过这种容器打包应用程序,意味着简化了重新部署,调试这些杂碎的重要工作,极大的提高了工作效率。

1.Docker与传统虚拟机的区别

特性Docker虚拟机
启动速度秒级分钟级
计算能力损耗几乎没有损耗50%左右
性能接近原生弱于
系统支持量(单击)上千个几十个
隔离性资源限制完全隔离

2.Docker与传统虚拟机架构

三.Docker的三大核心概念

1.镜像:是Docker创建容器的基础,类似虚拟机的快照,可以理解为一个面向Docker容器引擎的只读模版。

例如:一个镜像可以是一个完整的CentOS操作系统,称为一个CentOS镜像;也可以是一个安装MySQl的应用程序,称之为一个MySQL镜像。

2.容器:从镜像创建的运行实例,它可以被启动,停止和删除。所创建的每一个容器都是相互隔离,互不可见,以保证安全性的平台。可以将容器看作是一个简易版的linux环境,Docker利用容器来运行和隔离应用。

3.仓库:集中保存镜像的地方,当创建了自己的镜像之后,可以使用push命令将它们上传到公有长裤(public)或者私有仓库(private)。当下次在另外一台机器上使用这个镜像时,只需从仓库中获取。

四.CentOS系统下Docker的安装

首先加载阿里的yum仓库

yum -y install wget
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
yum clean all

1.docker安装,阿里镜像站中有详细操作,直接复制即可,链接为:docker-ce镜像_docker-ce下载地址_docker-ce安装教程-阿里巴巴开源镜像站 (aliyun.com)

添加国内的镜像站


vim /etc/docker/deamon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": ["https://cf-workers-docker-io-8jv.pages.dev"],
"insecure-registries": ["192.168.10.106"]

}

修改内核参数配置文件sysctl.conf

vim /etc/sysctl.conf

net.ipv4.ip_forward=1
net.bridge.bridge-nf-call-ip6tables=1
net.bridge.bridge-nf-call-iptables=1

systemcal restart docker

 到这里docker容器就真正意义的安装完成。

五.Docker镜像操作

1.查看docker版本和服务 docker version 

搜索镜像docker search 镜像名

其中返回的信息包括名称(name),描述(DESCRIPTION),星级(STARS),是否官方创建(OFFICIA),是否主动创建(AUTOMATED)。默认输出结果会按照星级评价进行排序,

拉取镜像docker pull 镜像名:【标签】(如果下载时不指定标签,默认下载最新版本的镜像,即标签为latest标签,可以通过指定标签的形式下载指定版本镜像。)

 2.查看镜像信息

  • REPOSITORY:镜像属于的仓库;
  • TAG:镜像的标签信息,标记同一个仓库中的不同镜像
  • IMAGE ID:镜像的唯一ID号,唯一表示一个镜像
  • CREATED:镜像创建时间
  • VIRTUAL SIZE:镜像大小

3.用户可以根据镜像的唯一ID号获取镜像的详细信息

docker inspect 镜像ID号

4. 为本地镜像添加新的标签

docker tag 名称 新名称:[新标签]

5.删除镜像

docker rmi 仓库名:tag标签
或
docker rmi 镜像编号

当一个镜像有多个标签时,docker rmi命令只是删除该镜像多个标签中的指定标签,不会影响整个镜像。

6.存出镜像

将一台机器的镜像迁移到另外一台机器上,需要将镜像保存成为本地文件,这个过程叫做存出镜像,可以使用docker save命令进行存出操作,之后就可以拷贝该文件到其他机器。

docker save -o 存储文件名 存储的镜像

7.载入镜像,将存出的镜像文件重机器A拷贝到机器B,就可以使用docker load或者docker --input进行载入操作。

docker load < 存出的文件
或
docker load -i 存出的文件

8.上传镜像

将本地镜像上传到一个专门存放这些镜像的地方——仓库,目前比较方便的的公共仓库,默认为docker Hub官方仓库,需要注册公共仓库的账号。可以使用docker login命令来输入用户用名,密码和邮箱来完成注册和登录,再上传之前还需要先对本地镜像添加新的标签,然后在使用docker命令进行上传。

docker push 仓库名称:标签

六.容器操作 

1.Docker容器创建

docker create 【选项】镜像

选项:

-i:让容器的输入保持打开

-t:让Docker分配一个伪终端

-d:以守护进程的方式运行该容器

2.Docker 容器启动

docker start 容器ID/名称

此命令只是把容器创建了出来,并没有运行

3.查看容器信息

[root@localhost ~]# docker ps -a

4.容器的运行

[root@localhost ~]# docker start 5a

        启动容器后,可以看到容器状态一栏已经变为UP,表示容器已经处于启动状态。如果用户想创建并启动容器,可以直接执行docker run命令,等同于先执行docker create命令,再执行docker   start命令。
        注意:容器是一个与其中运行的shell命令共存亡的终端,命令运行容器运行,命令结束容器退出。

5.在创建容器时直接启动容器
        当利用dockerrun来创建容器时,Docker在后台的标准运行过程是:
    (1)检查本地是否存在指定的镜像。当镜像不存在时,会从公有仓库下载
    (2)利用镜像创建并启动一个容器:
    (3)分配一个文件系统给容器,在只读的镜像层外面挂载一层可读写层
    (4)从宿主主机配置的网桥接口中桥接一个虚拟机接口到容器中:
    (5)分配一个地址池中的IP地址给容器:
    (6)执行用户指定的应用程序,执行完毕后容器被终止运行。

[root@localhost ~]# docker run centos:7 /usr/bin/bash -c "ls /root"

注意:此命令只是用该容器执行了一下ls命令,随后此容器就关闭了

6.在启动容器时持续在后台运行

[root@localhost ~]# docker run -d centos:7 /usr/bin/bash -c "while true;do echo hello;done"

或

[root@localhost ~]# docker run -dit centos:7 /bin/bash

7.容器的终止

[root@localhost ~]# docker stop b18(容器名或容器ID)

8.进入容器

[root@localhost ~]# docker exec -it 03f(容器名或容器ID) /bin/bash

退出

[root@03f062851c52 /]# exit

9.容器导出

[root@localhost ~]# docker export 03f(容器名或容器ID) >centos7(文件名)

10.容器导入生成镜像

[root@localhost ~]# docker import centos7(被导出的容器名) centos7:test(生成的镜像名称:标签)

[root@localhost ~]# docker images

11.容器删除

[root@localhost ~]# docker rm 7f

删除所有容器

docker rm -f $(docker ps -a | awk '{print $1}')

  • 15
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
引用\[1\]:Docker镜像命令思维导图是一篇文章,主要用来记录Docker命令的思维导图,方便回顾和复习使用。文章中提供了多个思维导图源文件,包括docker服务、docker整体、docker镜像、docker容器和补充的redis-cli命令。这些思维导图可以帮助用户回顾和学习Docker命令的使用。\[1\] 引用\[2\]:Docker使用思维导图及各种命令是一篇文章,介绍了Docker的架构和常用命令。文章中提供了Docker的架构图和常用命令的思维导图,包括搜索命令、下载镜像、列出镜像、删除本地镜像、保存镜像、加载镜像、构建镜像以及容器相关的命令。这些思维导图可以帮助用户更好地理解和使用Docker。\[2\] 根据提供的引用内容,可以看出这些思维导图主要是为了帮助用户回顾和学习Docker基本管理命令。这些思维导图提供了Docker的架构图、常用命令的概览以及具体命令的使用示例。用户可以根据自己的需求选择相应的思维导图来学习和使用Docker。 #### 引用[.reference_title] - *1* [Docker命令大全(带思维导图)](https://blog.csdn.net/bzu_mei/article/details/127627898)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Docker及其使用思维导图](https://blog.csdn.net/hliq5399/article/details/106021348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值