目录
安装docker
离线安装
1.下载docker离线包
说明,也可以从https://download.docker.com/linux/static/stable/网址下载指定版本
2.下载离线安装工具
下载后将工具解压
3.将以上资源放在一个目录下
4.在linux环境下,将资源放在root目录下,因为root目录有读写权限
5.执行安装操作
安装成功后,会有以下信息
6.查看docker信息
在线安装
1.安装一组工具
sudo为管理员权限
2.设置yum仓库地址
以上两种方式选一即可
3.更新yum缓存
4.安装docker
docker服务相关指令
查看docker是否启动
running表示正在运行,dead表示没有运行
停止,启动,重新启动docker服务
开启,关闭开机自启docker
查看docker信息
docker镜像加速
docker镜像相关指令
下载镜像(在线)
例如:docker pull mysql
浏览本地镜像
查看镜像详情
查看历史镜像
一个镜像由多个层(layer)组成,通过此指令可查看各个层的创建信息
导出镜像文件
将下载好的镜像文件保存到本地
hello-world为一个镜像,hello-world.tar.gz是保存到本地的镜像文件
导出镜像文件(离线)
也可看作是离线下载镜像文件,需要在 hello-world.tar.gz文件所在的根目录
运行镜像
镜像运行会默认启动一个容器
删除镜像
前提是该镜像下没有容器,否则使用-f强制删除
docker容器相关指令
创建并启动容器
-it,i表示交互式操作,t表示终端
bash表示进入终端,基于交互式进行操作
查看docker中的容器
查看运行中的容器
查看所有容器
查看容器日志
容器在创建是会记录日志,通过以下指令查看日志,若容器启动不起来,通过日志拍错
停止,启动,重启容器
进入指定容器
退出容器
如果是容器创建时进入了容器,退出时,容器就会关闭
如果是容器已创建,进入容器,退出后,容器不会关闭
删除容器
删除指定容器,前提是容器要关闭,否则加-f强制删除
删除没有启动的容器
docker数据管理相关指令
容器中管理数据的方式:
1)数据卷
2)挂在主机目录
数据卷操作
创建数据卷
查看所有数据卷
查看指定数据卷信息
Mountpoint为宿主机的数据卷路径
启动挂载数据卷的容器
第一种方式
第二种方式
删除数据卷
删除指定数据卷,数据卷被容器挂载则不能删除
删除所有没有被容器使用的数据卷
挂载主机目录
如果宿主机目录不存在,docker会自动创建该目录
查看挂载目录信息
Source为宿主机挂载路径
Destination为容器挂载路径
Docker镜像制作
我们可以将一些文件通过Dockerfile文件描述,再进行build生成自定义镜像
注意:所有的自定义镜像都要基于centos镜像
准备工作
1.centos:7镜像
2.jdk8压缩文件,linux版本
创建Dockerfile文件
在jdk8压缩文件的根文件夹
输入以下内容
from就是引入centos:7镜像,所必须要有名为centos:7的镜像
add是添加jdk压缩包,压缩包后跟的是放此文件容器的目录
ENV为容器的环境信息
CMD为启动容器默认添加的指令为bash,如果启动容器最后有指令,该指令会被覆盖
创建jdk镜像文件
-t表示镜像名,"."表示表示构建过程中从当前目录寻找文件,所以一定要在自定义镜像的目录下执行该指令
进入jdk镜像文件的容器后,用 java -v查看容器是否正常
docker容器互联相关指令
Docker中纯在多个容器时,容器与容器之间通常需要通讯,一般采用以下两种方式
1)两个容器通过宿主机通讯(容器中的端口可以映射到宿主机上,指令-p)
2)两个容器通过虚拟网络进行通讯,但我们必须要创建虚拟网络
新建虚拟网络
-d为网络类型,默认就是bridge
t-net为虚拟网络的名字
查看网络信息
查看所有网络信息
查看指定网络信息
创建容器
基于同一个镜像创建两个不同容器都加入同一个虚拟网络中
测试网络是否互通
进入取其中一个容器
两个指令都显示如下内容说明连接成功