Linux---Docker使用

虚拟化

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

  • 1、容器可以制造一个权限隔离监牢。
    ./当前目录 …/上一层
  • 2、执行效率高,容器技术,在计算机系统当中只是一个进程,使用 方便,效率更高
  • 3、方便部署,更容易保持程序运行环境的一致性。

Docker组件
Linux---Docker使用_第1张图片
Docker是一个c/s结构
Server 服务
Server端存储镜像
Client 客户
Client 进行镜像的下载,使用,上传
Image 镜像
镜像是构建docker的基石,docker把应用程序及依赖关系包,打包到镜像文件当中,通过这个文件生成docker容器,image可以说是容器的模板。
Docker镜像是有文件系统叠加而成的,底端是一个文件引导系统,在容器运行起来的时候,引导系统被卸载,留出更多的空间给磁盘镜像使用。
Registry 注册中心
注册中心位于服务端,用来保存用户构建的镜像,registty分为公有和 私有两种,公有的叫做docker hub,我们可以注册账号,分析镜像,但 是docker hub是外网,下载镜像很慢,建议各位同学搭建自己的 registry。但是一定要注意,直接保存镜像文件的不是registry,而是 repository(仓库),一个注册中心(registry)可以有多个仓库 (repository),一个仓库(repository)里面有多个镜像(image)。
容器:容器用来运行镜像的系统或者程序,容器基于镜像创建模板,然 后运行,容器是基于镜像启动的,容器可以运行一个或者多个进程。
容器具体讲:是一个镜像格式,一些列标准操作,一个执行环境。
Docker借鉴了标准集装箱的概念。标准集装箱将货物形成大小的标准。
Linux---Docker使用_第2张图片

Docker安装与基本使用

Docker可以运行在windows上,linux上。
Centos系统对docker支持友好,centos上docker运行稳定。
其他系统,docker需要到官网下载,解压,安装
Centos yum源自带docker
所以在centos上docker安装:

yum -y install docker

在这里插入图片描述

报错处理

Linux---Docker使用_第3张图片

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

Linux---Docker使用_第4张图片

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

在这里插入图片描述
Linux---Docker使用_第5张图片

Docker 命令
查看版本
Docker version

Linux---Docker使用_第6张图片

查看镜像
Docker images

在这里插入图片描述

Repository 仓库
Tag 标签
Image id 镜像id
Created 创建时间
Size 镜像大小

拉去第一个镜像
Docker pull imgname

Linux---Docker使用_第7张图片

修改docker源
Docker配置文件(这里修改docker源是因为下载的话是访问国外的资源所以会慢,因此修改为国内资源,访问快的可以不用修改,最终目的就是下载成功即可)

Linux---Docker使用_第8张图片

然后添加修改

在这里插入图片描述

重新启动docker

在这里插入图片描述

从新下载:

Linux---Docker使用_第9张图片

下载成功!!
启动镜像
查看,当前没有mysql服务

在这里插入图片描述

检查网络
Sysctl net.ipv4.ip_forward

在这里插入图片描述

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

在这里插入图片描述

添加
Net.ipv4.ip_forward= 1

Linux---Docker使用_第10张图片

然后从起网络
Sysctl restart network

Linux---Docker使用_第11张图片
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
在这里插入图片描述
创建并启动容器
Docker run -dit --name=mysql8.0 91daddee7afee /bin/bash
在这里插入图片描述
Run 运行
-d 守护容器,容器当中的程序需要长期运行的时候,我们可以创建一个守护式的容器,就算exit也不会停止。
常用守护参数的
Mysal
Nginx
Apache
tomcat
-i 交互式
-t 容器启动后会进入命令行,-i和-t一起运行容器创建之后就能登录进去,并且分配 一个伪终端

进入容器
Docker exec -it mysql8.0 /bin/bash
在这里插入图片描述
Exec 进入容器
-i 交互式
-t 容器启动后会进入命令行,-i和-t一起运行容器创建之后就能登录进去,并且分配 一 个伪终端
/bin/bash进入执行的第一个命令
退出容器我们用exit
报错:
Container 容器

在这里插入图片描述
容器没有启动导致的问题,非法关闭容器,或者开始没有启动容器
Docker start 容器
在这里插入图片描述
容器的常规管理
Container 容器
Docker container ls --all 列出运行的容器
在这里插入图片描述
Container ID 容器id
Image 镜像id
Command 命令
Created 创建时间
Status 状态
Up 启动状态
Exited 退出状态
Ports 端口/协议
Name 容器的名称
Docker container ls --all 列出所有的容器
在这里插入图片描述
Dcoker container stop 容器id或者容器名称 停止运行容器
Dcoker container start 容器id或者容器名称 开始运行容器
Linux---Docker使用_第12张图片
docker container kill 容器id或者容器名称 杀死容器
Docker container rm 容器id或者容器名称 删除容器
Linux---Docker使用_第13张图片

你可能感兴趣的:(Linux---Docker使用)