docker简明教程

一:介绍

本简明教程没有理论和思想,直接介绍怎么使用。
Docker作为一个软件集装箱化平台,可以让开发者构建应用程序时,将它与其依赖环境一起打包到一个容器中,然后很容易地发布和应用到任意平台中
为什么时候Docker : 不同的应用程序所依赖的环境不一样,如果把他们依赖的软件都安装在一个服务器上,不仅需要调试很久,而且可能会有冲突。
如果想把两个应用程序隔离起来,可以在服务器上创建不同的虚拟机,不同的虚拟机放不同的应用,但是虚拟机的开销比较高。docker作为轻量级的虚拟机,是一个很好的工具。

二:思想

集装箱
​标准化
​隔离

三:docker有3大核心

1:镜像

Docker 镜像可以看作是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)。
镜像不包含任何动态数据,其内容在构建之后也不会被改变

2:容器

运行程序的地方;镜像是静态的,每一层都只是可读的,而容器是动态的,里面运行着我们指定的应用。

3:仓库

仓库-存放镜像的地方

4: 大白解释

记住两点:
1:镜像就像是模板,不能直接使用,如我们下载的redis能直接启动运行吗?NO!
2: 镜像可以创建多个容器,我们运行使用的是容器,就像是你下载了redis 这个安装软件就是镜像,
你使用这个安装软件 在你机器上安装了2次redis,就相当于安装了2个redis容器。你可以这么理解!
但实际思想有区别,安装了2个redis就要占用2份空间,但docker不是这样。

四 docker安装

第1步: 删除原有docker

yum remove docker
docker-client
docker-client-latest
docker-common
docker-latest
docker-latest-logrotate
docker-logrotate
docker-selinux
docker-engine-selinux
docker-engine

第2步:设置YUM源

yum install -y yum-utils device-mapper-persistent-data lvm2  

第3步:阿里镜像

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo                 

第4步:安装docker

yum -y install docker-ce 

docker分(ce社区版) (ee->企业版) 一般都是安装社区版

五: docker基本命令

5.1 docker

5.1:启动 停止dockers

systemctl start docker 启动docker
systemctl restart docker 重启docker
systemctl stop docker 停止docker
systemctl status docker 查看docker状态
systemctl enable docker 开机启动docker

5.2: 镜像操作

docker pull 镜像名称:版本号
如下拉mysql:
docker pull mysql:8.0 – 下拉mysql 8.0 版本
docker rmi 镜像名称【镜像ID】 删除镜像
docker rmi -f $(docker images) 清空镜像
docker images 查看镜像

repository 镜像库中的镜像名称
TAG 版本
Image ID 镜像ID
CREATED 创建事件
SIZE 大小
在这里插入图片描述

5.3 容器操作

docker run 镜像名称:版本号(TAG) 创建一个容器
docker stop 容器名称[容器ID] 停止容器
docker start 容器名称[容器ID]
docker rm -f 容器名称 【容器ID】
docker rm -f $(docker ps -aq) 清空容器
docker logs -tf --tail num 容器ID 查看容器log
docker top 容器ID 查看容器进程
dockers inspect 容器ID 查看容器元信息
docker run -it 镜像名称| 镜像ID 启动容器并进入容器
docker exec -it 容器名称 | 容器ID 进入容器
拷贝容器内文件到本地(宿主机)
docker cp 容器ID或容器名称: 文件路径 空格 本地路径

使用docker ps -a 查看所有容器
在这里插入图片描述

CONTAINER ID 容器名称
IMAGE 使用那个镜像创建的容器
COMMAND 命令行
CREATED 创建日期
STATUS 当前状态,
PORTS docker内端口号
NAMES 容器名称

综合应用案例:

比以安装redis为例。

1: 首先启动docker

systemctl start docker 

2:查看docker 是否启动成功

systemctl status docker
在这里插入图片描述
只要有绿色就代表成功了

3:设置开机启动

为了防止每次启动linux都要启动docker 麻烦 我们可以使用如下命令

system enable docker 

这样下次运行无需再启动。

4: 查找dockerhub中是否用redis镜像

docker search redis

在这里插入图片描述

进入dockhub可以看到相应的安装指南 和 找到对应的版本号
在这里插入图片描述
我们安装6.2版本
在这里插入图片描述

5: 拉取镜像

docker pull redis:6.0

在这里插入图片描述

5:查看成功下载镜像

docker images

在这里插入图片描述

6: 删除镜像

docker rmi 66896772e1e2
在这里插入图片描述

7: 创建容器

docker run -d redis:6.0                       // -d 后台启动 redis:6.0是镜像的名称

在这里插入图片描述
其实安装的这个镜像没啥用,只能在本地机 使用, 无法远程连接

8:建立能够远程连接的容器

认识几个参数
-p 宿主机端口号:镜像软件的端口号
–name 容器名称
-d 后端运行
-f 强制 linux命令

删除容器: docker rm -f 37e80e8e87f3docker rm -f  37e80e8e87f3
从新创建一个容器

docker run -d -p 6380:6379 --name redis2 redis:6.0

在这里插入图片描述
在window使用客户端连接,这样就可以远程调用了

在这里插入图片描述

六:创建镜像

提交自己的镜像
比如我们下载的centos镜像,没有vim 等一些命令,我们可以从新制作一个符合我们需要的镜像
如 下拉 centos7 镜像

docker pull centos:7

在这里插入图片描述
创建一个容器

docker run -it --name mycentos centos:7

此处使用了 -it 进入容器 即: 创建并进入容器
在这里插入图片描述
运行vim发现没有这个命令
在这里插入图片描述

yum install vim  下载vim

ok 打包成自己的镜像
退出容器 exit
在这里插入图片描述

语法结构

docker commit -m=“描述信息” -a=“作者名” 容器名|容器ID 你自己的镜像名称:版本号

docker commit -m="我安装了vim" -a="haojia" mycentos localcentos:1.0

在这里插入图片描述

容器数据卷

-v 挂载目录
docker安装后软件后,有时我们需要对配置文件修改,或查看log,一个方法是 使用命令

docker exec -it 容器名或容器ID /bin/bash 进入容器,找到相应的文件进行修改

麻烦
1: 每次都要输入上述命令。
2: docker集成的linux命令不全,需要随时下载命令。
所以我们可以将内部目录映射到linux机本地目录,这时,我们可以修改本地文件,docker会智能的映射到docker内对应的目录中
实现这种需求,需要我们使用容器卷方式 对 目录进行挂载

-v 语法格式:

-v 宿主机目录路径:容器目录路径

未完待续

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技能侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值