docker基础1——相关概念及基本操作讲解

偏执的太偏执、 2022-05-08 13:18 270阅读 0赞

一、相关概念

1,容器与镜像

Docker 是一个开源的应用容器引擎

容器——是独立运行的一个或一组应用,它是一个类似于对象的概念。

有了容器之后就需要有镜像,镜像——就是安装好系统的硬盘文件,由镜像能够生成很多个容器,容器可以想象成类的概念。每个镜像里都设置了相关程序,镜像是一层层组成的,最上面一层设置了运行什么程序,就是说它决定了跑什么容器!

Docker 主机(Host):一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。

Docker 客户端(Client):就是连接Host(具体来说host的守护进程)并使用其资源的东东。

Docker 仓库(Registry):仓库嘛,就是用来保存容器的地方咯。

Docker Machine:Docker Machine是一个简化Docker安装的命令行工具

2,docker的架构

70

架构图特别说下registries,相当于仓库的概念,当有什么镜像需要获取的时候,可以找registries。

二、安装

安装环境为centos7

1,修改centos7网卡

根据VMnet8的网段修改网卡

70 1

vim /etc/sysconfig/network-scripts/ifcfg-ens32:

70 2

dns和gateway 默认用2

2,安装docker

yum -y install docker

启动docker:

systemctl start docker

3,配置加速器(阿里云版)

登录阿里云后进入:

https://cr.console.aliyun.com/cn-hangzhou/mirrors

70 3

根据阿里云加速器配置docker:

70 4

4,搜索镜像

https://c.163yun.com/hub#/m/home/

70 5

5,验证docker是否安装成功

docker run hello-world

输出:

70 6

说明安装成功

三、docker命令(后续实验用到)

1,docker pull 镜像

载入镜像

2,docker tag 镜像

标记本地镜像,将其归入某一仓库。

3,docker rmi 镜像

标记本地镜像,将其归入某一仓库。

4,docker save 镜像名 > filename.tar

保存镜像

5,docker load -i filename.tar

加载镜像

6,把容器导出为镜像 docker export 容器名 > filename.tar

7,导入 cat filename.tar | docker import - 镜像名

8,docker ps查看正在运行的容器

9,docker logs获取容器的日志

10,docker run 创建一个新的容器并运行一个命令

四、测试docker(安装mysql、centos)

接下来,我们以案例按时讲解docker命令

1,安装mysql

docker pull hub.c.163.com/library/mysql:latest #载入镜像

docker images(查看镜像)

70 7

2,运行centos

docker run hub.c.163.com/library/centos

70 8

为何程序会自动结束?原来运行的容器没有与运行任何进程

因此需要为run加入两个参数: -i 以交互模式运行容器 -t 为容器重新分配一个伪输入终端 这两个参数通常同时使用

docker run -i -t hub.c.163.com/library/centos

70 9

3,别名运行

docker run -i -t —name=c1 hub.c.163.com/library/centos

70 10

docker ps -a #查看所有容器

70 11

4,启动和停止容器

docker start/stop c1

5,进入容器

docker attach c1

70 12

或者:docker exec -it c1 /bin/bash

6,查看日志

docker logs c1

70 13

7,测试运行 mysql

docker run -dit —restart=always —name=db -p 13306:3306 -e MYSQL_ROOT_PASSWORD=redhat -e MYSQL_DATABASE=gzuni hub.c.163.com/library/mysql

70 14

MYSQL_ROOT_PASSWORD 物理机密码

8,重命名镜像

docker tag hub.c.163.com/library/mysql com.gzuni.com/test/mysql:v1

70 15

9,删除镜像

docker rmi com.gzuni.com/test/mysql:v1

10,查看镜像历史记录

docker history docker.io/mysql

70 16

11,镜像保存路径

ls /var/lib/docker/

ls /var/lib/docker/image/

ls /var/lib/docker/image/overlay2/

修改默认路径:

vim /usr/lib/systemd/system/docker.service

70 17

12,导出镜像

docker save hub.c.163.com/library/mysql > mysql.tar

13,导入镜像

docker load -i mysql.tar

14,查看运行的进程

ps aux | grep -v grep | grep docker

70 18

15,查看 docker 运行/全部容器

docker ps #运行

docker ps -a #全部

16,目录挂载

docker run -dit —name=c1 -v /home/docker/data:/data hub.c.163.com/library/centos

-v 将物理机地址映射到容器目录

70 19

70 20

对映射后的目录进行修改会影响物理机的原文件。

发表评论

表情:
评论列表 (有 0 条评论,270人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Docker 基本概念

    Docker 包括三个基本概念 镜像(Image) 容器(Container) 仓库(Repository) 理解了这三个概念,就理解了 Docker 的整个生命周期。