Linux:docker的基本操作

目录

一、什么是虚拟化

1、Image 镜像

2、Registry 注册中心

3、repository(仓库)

二、Docker安装与基本使用

1、安装命令

1、安装:yum -y install docker

2、报错处理

3、查看是否安装成功:Yum list installed |grep docker

4、启动docker

2、docker命令

1、查看版本:Docker version

2、查看镜像:docker images

3、下载镜像:Docker pull imgname(镜像名称)

4、检查网络 ;Sysctl net.ipv4.ip_forward

5、创建容器

1、先创建再开启

2、创建并启动容器

6、进入容器

7、容器的常规管理

 


 

一、什么是虚拟化

虚拟化是一种资源管理技术,将计算机上的各种实体资源,如:服务器,网络,内存,存储进行抽象,转换后呈现出来,打破实体结构之间不可切割的障碍,使用户以更好的组态使用资源。

Vm可以虚拟化。

容器技术:在计算机上虚拟出独立的一块空间。

Vm虚拟化:需要虚拟整个计算机

容器技术:是基于物理计算机内核

容器虚拟化:

1、容器可以制造一个权限隔离监牢。

./当前目录 ../上一层

2、执行效率高,容器技术,在计算机系统当中只是一个进程,使用 方便,效率更高

3、方便部署,更容易保持程序运行环境的一致性。

Docker组件

Docker是一个c/s结构

Server 服务

Server端存储镜像

Client 客户

Client 进行镜像的下载,使用,上传

1、Image 镜像

镜像是构建docker的基石,docker把应用程序及依赖关系包,打包到镜像文件当中,通过这个文件生成docker容器,image可以说是容器的模板。

Docker镜像是有文件系统叠加而成的,底端是一个文件引导系统,在容器运行起来的时候,引导系统被卸载,留出更多的空间给磁盘镜像使用。

2、Registry 注册中心

注册中心位于服务端,用来保存用户构建的镜像,registty分为公有和 私有两种,公有的叫做docker hub,我们可以注册账号,分析镜像,但 是docker hub是外网,下载镜像很慢,建议各位同学搭建自己的 registry。但是一定要注意,直接保存镜像文件的不是registry,而是

3、repository(仓库)

一个注册中心(registry)可以有多个仓库 (repository),一个仓库(repository)里面有多个镜像(image)。

容器:容器用来运行镜像的系统或者程序,容器基于镜像创建模板,然 后运行,容器是基于镜像启动的,容器可以运行一个或者多个进程。

容器具体讲:是一个镜像格式,一些列标准操作,一个执行环境。

Docker借鉴了标准集装箱的概念。标准集装箱将货物形成大小的标准。

二、Docker安装与基本使用

Docker可以运行在windows上,linux上。

Centos系统对docker支持友好,centos上docker运行稳定。

其他系统,docker需要到官网下载,解压,安装

Centos yum源自带docker

所以在centos上docker安装:

1、安装命令

1、安装:yum -y install docker

2、报错处理

3、查看是否安装成功:Yum list installed |grep docker

4、启动docker

Docker 在centos当中是一个服务,所以启动的命令是

Systemctl start docker

2、docker命令

1、查看版本:Docker version

2、查看镜像:docker images

其中:

Repository 仓库

Tag 标签

Image id 镜像id

Created 创建时间

Size 镜像大小

3、下载镜像:Docker pull imgname(镜像名称)

由于docker hub是外网,下载镜像很慢,所以我们可以搭建自己的 registry

修改docker源(中国科技大学)

Docker配置文件

先进入socker文件中

路径是 cd /etc/docker

然后添加修改

从新下载:

下载成功!!

拓展:

上面的这一串字符是哈希加密的值。

Hash MD5:

除了加密,还可以做版本校验

1、hash MD5 无论对一个字符还是一个文件还是一个超大文件,加密后的结果长度一样

2、hash MD5加密对象有细微的变化,结果都会有巨大的变化。

3、Hash md5不可逆加密

4、Hash md5 对同一对象加密结果一下

那么我们回忆:

如果对文件进行加密,然后将文件和加密后的结果传输给了用户,用户收到文件之后,对文件再次进行加密,然后比对两次加密的值,确保文件传输正确。

4、检查网络 ;Sysctl net.ipv4.ip_forward

启动镜像

查看,当前没有mysql服务

检查网络

Sysctl net.ipv4.ip_forward

出现上述结果,则网络正常

如果不是,进入 /etc/sysctl.conf下修改配置文件

添加

Net.ipv4.ip_forward= 1

然后重启网络:Sysctl restart network

 

5、创建容器

创建方法有两种:一种是先创建再开启,一种是直接创建并开启

1、先创建再开启

docker create -it --name mysql8.0 91dadee7afee /bin/bash

创建容器

Docker create -it --name mysql8.0 mysql(镜像id) /bin/bash

Create 创建

-i 交互式

-t 容器启动后会进入命令行,-i和-t一起运行容器创建之后就能登录进去,并且分配 一个伪终端

启动容器

Docker start -ai mysql8.0

Start 开始

-a 将当前的输入/输出链接到容器上

-i 将当前的输入链接到容器上

退出容器

exit

2、创建并启动容器

docker run -dit --name=mysql8.0 91daddee7afee /bin/bash

Run 运行

-d 守护容器,容器当中的程序需要长期运行的时候,我们可以创建一个守护式的容器,就算exit也不会停止。

常用守护参数的

Mysal

Nginx

Apache

tomcat

-i 交互式

-t 容器启动后会进入命令行,-i和-t一起运行容器创建之后就能登录进去,并且分配 一 个伪终端

6、进入容器

Docker exec -it mysql8.0 /bin/bash

Exec 进入容器

-i 交互式

-t 容器启动后会进入命令行,-i和-t一起运行容器创建之后就能登录进去,并且分配 一 个伪终端

/bin/bash进入执行的第一个命令

退出容器我们用exit

报错:

Container 容器

7、容器的常规管理

Container 容器

Docker container ls 列出运行的容器

Container ID 容器id

Image 镜像id

Command 命令

Created 创建时间

Status 状态

Up 启动状态

Exited 退出状态

Ports 端口/协议

Name 容器的名称

Docker container ls --all 列出所有的容器

Dcoker container stop 容器id或者容器名称 停止运行容器

Dcoker container start 容器id或者容器名称 开始运行容器

docker container kill 容器id或者容器名称 杀死容器

Docker container rm 容器id或者容器名称 删除容器

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值