一.安装docker服务

1.Docker.tar.gz上传
2.将Docker.tar.gz 解压到/opt目录下
命令为 docker -zxf Docker.tar.gz -C /opt
3.配置yum源(yum源为本地yum源和网络yum源)
本地yum源的形式为

[docker]
name=docker
baseurl=file:///opt/Docker
gpgcheck=0
enabled=1

4.关闭所有防火墙

setenforce 0
systemctl stop firewalld
systemctl disable firewalld
iptables -F
iptables -x
iptables -z
iptables -save

5.安装docker

yum install docker-ce -y

6.开启docker并设置开机自启

systemctl start docker
systemctl enable docker

7.查看是否成功

docker info

二.Docker 镜像管理
拉取镜像的知识
1.配置加速器

[root@localhost ~]# vi /etc/docker/daemon.json
{"registry-mirrors":["https://dhp9bx4f.mirror.aliyuncs.com"]
}

【配置完加速器后要重启】不要忽略这一点
拉取centos镜像

[root@localhost ~]# docker pull centos

此时是从网络上拉取的
2.给镜像打标签

docker tag  300e315adb2f (此处写镜像的名字或者id) wangruxin(此处是你给镜像起的名字可以随意)

3.把镜像启动为容器

docker run -itd centos

4.查看所有容器

docker ps -a

查看本地镜像:docker images
搜索镜像:docker search 需要的镜像的名字
删除指定镜像:docker rmi 镜像名称
三.Docker通过容器创建镜像
1.docker run 容器启动后
2.docker exec -it d1e22ca7dc61(这里是容器的id) bash 进入容器
3.进入容器后可以安装一些工具[root@d1e22ca7dc61 /]# yum install net-tools -y
4.ctrl+d退出容器,此处需要两次,才能完全退出
5.[root@localhost ~]# docker commit -m"install net-tools" (为你安装的工具,或者作出的改变)-a "wangruxin"(作者) d1e22ca7dc61(容器id) heiheiya(为镜像取得新名字)
6.查看是否有heiheiya镜像

[root@localhost ~]# docker images

四.通过模板创建镜像
1.先下载模板 centos-7-x86_64-minimal.tar.g
2.将tar包导为镜像

[root@localhost ~]# cat centos-7-x86_64-minimal.tar.gz |docker import - centos7

3.查看[root@localhost ~]# docker images
此时多了一个centos7的镜像
4.把现有镜像导为一个文件

[root@localhost ~]# docker save -o ytl-wangruxin.tar(导为文件后显示) wangruxin(已有镜像的名字)

5.查看[root@localhost ~]# ll
此时多了一个

-rw-------. 1 root root  216535040 Dec 16 02:07 ytl-wangruxin.tar

6.tar包恢复镜像

[root@localhost ~]# docker load < ytl-wangruxin.tar

或者[root@localhost ~]# docker load --input ytl-centos.tar
五.Docker容器管理
1删除正在运行的容器加上-f

[root@localhost ~]# docker rm -f d1e22ca7dc61

2容器导出tar包

[root@localhost ~]# docker export a9c3cf95cd5c(容器id)  > wang.tar(新取的名字)

查看ll

-rw-r--r--. 1 root root  238086656 Dec 16 02:23 wang.tar

tar包导为镜像

[root@localhost ~]# cat wang.tar |docker import - wang

六.Docker仓库管理
1.从网络拉取registry镜像

[root@localhost ~]# docker pull registry

2.把它启动作为私有仓库

[root@localhost ~]# docker run -itd -p 5000:5000 registry

3.检查是否拥有这个私有仓库

[root@localhost ~]# curl http://192.168.200.69:5000/v2/_catalog
{"repositories":[]}

4.把想要上传到私有仓库的镜像打标签
[root@localhost ~]# docker tag centos 192.168.200.69:5000/wangruxin
5.更改配置文件

[root@localhost ~]# vi /etc/docker/daemon.json

添加

"insecure-registries
":["192.168.200.69:5000"]

6.重启docker
[root@localhost ~]# systemctl restart docker
7.重启registry容器

[root@localhost ~]# docker start 23018bacd684

8,上传镜像

[root@localhost ~]# docker push 192.168.200.69:5000/wangruxin

9.再次查看私有仓库会有一个wangruxin的镜像

[root@localhost ~]# curl http://192.168.200.69:5000/v2/_catalog
{"repositories":["wangruxin"]}

10.相同网段的虚拟机可以从私有仓库拉取wangruxin这个镜像
这是96节点
两个节点之间要可以相互ping通

[root@localhost ~]# docker pull 192.168.200.69:5000/wangruxin

11.查看镜像信息

[root@localhost ~]# docker images
REPOSITORY                      TAG                 IMAGE ID            CREATED             SIZE
192.168.200.69:5000/wangruxin   latest              300e315adb2f        9 days ago          209MB

七 Docker 数据管理
挂载本地的目录到容器里
在宿主机创建一个目录

[root@localhost ~]# mkdir /abc

然后挂载在容器里面

[root@localhost ~]# docker run -itd -v /abc/:/data centos bash (--name 给容器取得名字可加可不加)

使用上一个容器的数据卷,192.168.200.69:5000/wangruxin的镜像创建了一个新的容器

[root@localhost ~]# docker run -itd --volumes-from quirky_blackburn (上一个容器的数据卷)300e315adb2f(镜像id)  /bin/bash
7780ab2dab9294ba6889fcb69c4a9cfcb02e706085228f38c8247b74892b9371

查看容器全部信息

[root@localhost ~]# docker inspect 7780ab2dab92

查看容器详细信息

[root@localhost ~]# docker inspect -f {{.Mounts}} 7780ab2dab92
[{bind  /abc /data   true rprivate}]
[root@localhost ~]# docker run -itd -v /data/ --name heiheipo centos bash

不进入容器查看
[root@localhost ~]# docker exec -it 214fc121b7dd (容器id) ls(想要的操作
八.Docker数据卷的备份和恢复

Docker小白系列相关推荐

  1. Docker入门系列之二:使用dockerfile制作包含指定web应用的镜像

    2019独角兽企业重金招聘Python工程师标准>>> 在前一篇文章:Docker入门系列之一:在一个Docker容器里运行指定的web应用 里, 我们已经成功地将我们在本地开发的一 ...

  2. 大数据小白系列——HDFS(3)

    这里是大数据小白系列,这是本系列的第三篇,介绍HDFS中NameNode选举,JournalNode等概念. 上一期我们说到了为解决NameNode(下称NN)单点失败问题,HDFS中使用了双NN的机 ...

  3. Docker入门系列之三:如何将dockerfile制作好的镜像发布到Docker hub上

    这个系列的前两篇文章,我们已经把我们的应用成功地在Docker里通过nginx运行了起来,并且用dockerfile里制作好了一个镜像. Docker入门系列之一:在一个Docker容器里运行指定的w ...

  4. 大数据小白系列——HDFS(1)

    [注1:结尾有大福利!] [注2:想写一个大数据小白系列,介绍大数据生态系统中的主要成员,理解其原理,明白其用途,万一有用呢,对不对.] 大数据是什么?抛开那些高大上但笼统的说法,其实大数据说的是两件 ...

  5. Docker小白到实战之Docker网络简单了解一下

    前言 现在对于Docker容器的隔离性都有所了解了,但对容器IP地址的分配.容器间的访问等还是有点小疑问,如果容器的IP由于新启动导致变动,那又怎么才能保证原有业务不会被影响,这就和网络有挂钩了,接下 ...

  6. Docker小白到实战之Dockerfile解析及实战演示,果然顺手

    前言 使用第三方镜像肯定不是学习Docker的最终目的,最想要的还是自己构建镜像:将自己的程序.文件.环境等构建成自己想要的应用镜像,方便后续部署.启动和维护:而Dockerfile就是专门做这个事的 ...

  7. Docker小白到实战之容器数据卷,整理的明明白白

    前言 上一篇把常用命令演示了一遍,其中也提到容器的隔离性,默认情况下,容器内应用产生的数据都是由容器本身独有,如果容器被删除,对应的数据文件就会跟着消失.从隔离性的角度来看,数据就应该和容器共存亡:但 ...

  8. 蓝桥杯小白系列之汇编点亮led灯

    蓝桥杯小白系列之汇编点亮led灯 1.源代码 2.逐条分析 (1)ORG 0000H (2)START: 伪指令,编译器可识别,单片机不可识别,可以随便起. (3)蜂鸣器设置 蓝桥板插电以后蜂鸣器常会 ...

  9. Docker入门系列(一):目标和安排

    Docker入门系列(一) 这个系列的教程来源于docker的官方文档,此文档的目的在于一步一步学习docker的使用方法. 这一系列的教程有如下几篇文档: docker安装启动 构建第一个docke ...

最新文章

  1. 关于软件测试第一次作业的几处提示
  2. yolo 识别 狗狗自行车
  3. 有一种灾难,叫数据中心被大火烧了
  4. 八叉树 java_java简单实现八叉树图像处理代码示例
  5. dropout比率最好的设置为0.5,因为随机生成的网络结构最多
  6. 多线程编程1 - NSThread
  7. PowerDesigner 缺省值 引号 问题
  8. 机器学习实战(用Scikit-learn和TensorFlow进行机器学习)(二)
  9. SAP Cloud for Customer Sales Order Requested Date的业务含义和实现
  10. 全栈入门_启动数据栈入门包(2020)
  11. torch.nn 介绍(部分)
  12. SpringBoot启动o.s.b.d.LoggingFailure… 错误解决方法
  13. 一张图读懂中国产业链的变化与机会
  14. Java基础笔记day01
  15. 4k纸是几厘米乘几厘米_4K纸是多大?
  16. 面试官问你的缺点是什么,这么回答漂亮!
  17. 使用POI导出Excel使单元格内容换行
  18. Flutter 中的应用内购买
  19. MQTT网关连接华为云物联网平台应用
  20. ls、ls -a、ls -l、ls -al、ll、ll -a区别

热门文章

  1. 51单片机使用sprintf和printf
  2. SVN覆盖本地文件和误删文件的恢复方法
  3. 结构体指针变量含义,结构体指针函数
  4. 朋友圈技术范儿装X指南-有向无环图
  5. python函数定义的基本格式_python 函数基础
  6. QT翻译(中英文切换
  7. Android动画案例(一) 帧动画
  8. OPPO R11 R11系列获取root权限,应该也包括密码破解(自行尝试),本人请测root 可以。
  9. 脚本录制软件python 按键精灵 tc_从10种脚相看你的财运
  10. win11安全中心无法打开跳出来应用选择怎么办 解决方法