《Docker 镜像操作,容器操作,数据管理》

Docker镜像操作

什么是镜像 : 就是虚拟机的静态磁盘文件
也就是说小的虚拟机
可以任意的复制,分发,就是可以任意执行,可以别的计算机上执行

在线装镜像 (官方的镜像库)

http://hub.docker.com
可以搜搜你需要的进项
在这里插入图片描述
找到你需要的镜像后按照命令安装就好了
在这里插入图片描述

离线装镜像

把镜像的压缩包 上转到/root/目录中
在这里插入图片描述

导入镜像
docker load -i 文件名

在这里插入图片描述

查看镜像列表
docker images

在这里插入图片描述


镜像命令

装镜像
docker pull xxxx:xxx
查看镜像列表
docker images
删除镜像

如果有容器使用这个镜像,不允许删除

删除的时候 镜像ID的前3个字母就行
镜像列表中查看 镜像ID

docker rmi bf7
强制删除
docker rmi -f bf7
删除多个镜像
docker rmi -f xxx xxx xxx xxx
运行镜像
docker run 镜像名
镜像改名
docker tag 镜像的名 修改的名:标签
构建镜像
docker build -t aaa:bbb 
导出镜像

多个镜像压缩到一个 压缩包中

docker  save 111 222 333 | gzip > a.gz
导入镜像
docker load -i a.gz

下载不同版本的镜像

镜像名 分成两部分

名称:标签
默认标签是 latest

在这里插入图片描述
tag 就是标签 ,如果我们要下载的是 ,要下载镜像的旧版本
那么下载 命令执行的时候 加上就可以了 比如

docker pull 镜像名:版本
如何找到不同的版本

在官网里找
http://hub.docker.com
在这里插入图片描述
在这里插入图片描述


Docker容器操作

  • 镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的 类 和 实例 一样
  • 镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

容器命令

doker run

- a 后台运行
# -d 后台运行
docker run -d tomcat

#查看容器中的日志
docker logs xxx

#查看容器列表
docker ps          # 查看运行状态的容器
docker ps -a       # 查看全部容器,包括已关闭的容器

-d 是后台运行

直接run 方法 来运行的话 会打出很多日志所以直接 加上-d 来启动


-it 交互终端

我们运行后 跟容器交互,就是容器里面执行一些命令或者创建文件等
容器也是跟系统一样就是虚拟机 。

  • -i 是交互
  • -t 是终端
  • exec 进入容器
# 进入容器,在容器内部执行执行的命令
#-i 交互
#-t 终端
#exec 进入容器
docker exec -it 容器运行后的ID pwd
docker exec -it xxx ls
docker exec -it xxx touch f1.txt
docker exec -it xxx ls
docker exec -it xxx top

进入容器需要运行后的容器ID 容器执行后docker ps -a 命令来看 运行后的ID

用 exec 来进入容器执行命令的话 就一次 不能彻底进入容器


history 查看容器的默认启动命令
docker history tomcat
docker history redis
docker history mariadb
docker history centos:7

–name 容器命名

启动容器时 会有默认的名称,如果我们要指定容器的名字 那么使用此命令

–restart=always 容器会随系统一起重新启动

当Docker服务关闭时 容器跟着关闭 所以 我们使用此命令来 docker服务启动时 容器也跟着启动

docker run -d --name cat1 --restart=always tomcat

– rm 容器关闭时,自动删除容器

当docker 关闭时 容器也跟着删除

docker run -d --rm tomcat top

docker ps

ps 命令是 查看容器的列表

-a

没有参数 的 ps 命令 只显示运行中的 容器 加 -a 命令的话显示 运行停的和在运行的所有容器


docker loges

查看容器的日志


docker inspect

查看容器的各种参数和属性

dicker stop

把容器关闭

dicker restart

重启容器 根据名字或者根据id删

dicker start

启动容器 根据名字或者根据id删

这个跟 run 命令的区别是

  • docker run ———— 没有启动过的容器 启动时使用
  • docker start ———— 启动过 被停止的容器 中使用

docker exec

进入一个容器 并且 执行一个命令

docker rm

删除容器 根据名字或者根据id删

-f

强制删除 如果删掉正在运行的容器 加-f 就ok 了

docker container prune

删除 被停止的所有容器

在这里插入图片描述


数据管理

目录挂载

在开发过程当中,在数据库容器里我们存储好多信息,但是容器一旦删除就里面的信息都没了 所以我们先把 容器里存数据的目录挂载到我们的宿主机上 那么容器删除了也 数据库中的数据能保留
在这里插入图片描述

  • /usr/app 是宿主机的一个目录 -v 参数可以自动创建这个文件夹
  • /opt/app 是容器内的路径
实现目录挂载

-v /user/app:/opt/app

docker run -d --name cat1 -v /user/app:/opt/app tomcat

测试目录挂载是否成功
  • 进入 cat1 容器,在它的 /opt/app 目录下新建文件 f1.txt
docker exec -it cat1 bash
cd /opt/app
touch f1.txt
ls
exit
  • 查看宿主机 /usr/app 目下的文件录
cd /usr/app
ls

在这里插入图片描述


数据卷

数据源是一种特殊的目录,如果我们挂载的目录太长,不方便重用不方便访问 那么我们选择 数据卷

创建数据源
docker volume create my-vol

查看数据卷

检查有多条数据源

docker volume ls

在这里插入图片描述

查根据数据卷的名字查看数据卷的地址

docker inspect my-vol 

在这里插入图片描述


测试目数据挂载数据卷
  • 进入 cat1 容器,在它的 /opt/app 目录下新建文件
docker exec -it cat2 bash
cd /opt/app
touch f2.txt
ls
exit
  • 查看宿主机 /usr/app 目下的文件录
cd /var/lib/docker/volumes/my-vol/_data
ls

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值