dockersave(dockersave目录)
本篇文章给大家谈谈dockersave,以及dockersave目录对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、容器正在运行可以用dockersave吗
- 2、docker的容器常规操作
- 3、docker镜像拉取
- 4、Docker系列二:玩转单个容器
- 5、dockersave很慢
- 6、Docker的save和export命令的区别
容器正在运行可以用dockersave吗
容器正在运行可以悄哪用dockersave。系统重启容器还是保留的,不过状态会变成停止的燃运或,以后链接容器用dockerave。皮伍
[img]docker的容器常规操作
解释:创建一个容器,但容器处于停止状态
解释:启动容器
解释:
-t : 让Docker分配一个伪终端并绑定到容器的标准输入上
-i: 让容器的标准输入保持打开
-d: 让Docker容器在后台以守护态运行
解释:
-details:打印详细信息
-f,-follow:保持持续输出
-since string:输出从某个时间开始的日志
-tail string:输出最近的若干日志
-t,-timestamps:输出时间戳信息
-until string:输出某个时间之前的日志
解释:暂停容器,暂停后,容器处于paused状态
解释:将paused状态的容器恢复至运行状态
解释: 终止一渣败个运行状态的容器,但是这个终止不是立即执行的。该命令会先向容器发送一个SIGTERM信号,等待一段超时时间(默认为10s)后,再发送SIGKILL信号终止容器,而终止容器的关拿梁嫌键就在于SIGKILL信号。
解释: 终止一个运行状态的容器,但是这个终止是立即执行的。该命令直接发送SIGKILL信号强行终止容器。
解释: 重启容器
解释:进入容器。使用这个命令有时候并不方便,当多个窗口同时attach到同一个容消手器的时候,所有窗口都会同步显示;当某个窗口因命令阻塞时,其他窗口也无法执行操作;默认使用CTRL+q或者CTRL+p退出容器
解释:
-d,--detach:在容器中后台执行命令
--detach-keys="":指定将容器切回后台的案件
-e,--env=[]:指定环境变量列表
-i,--interactive=true|false:打开标准输入接收用户输入命令,默认值为false
--privileged=true|false:是否给执行命令以高权限,默认值为false
-t,--try=true|false:分配伪终端,默认值为false
-u,--user="":执行命令的用户名或ID
解释:
删除处于退出或者终止状态的容器
-f,--force=false:是否强行终止并删除一个处于运行状态的容器
-l,--link=false:删除容器的链接,但保留容器
-v,--volumns=false:删除容器挂载的数据卷
解释:导出容器。导出一个已经创建的容器到文件,不管此时这个容器是否处于运行状态。在这里如果把export换成save,再把af18换成镜像名称:tag,就是导出镜像的命令了。但是这两个命令的区别在于:docker export命令丢弃了原容器的历史信息及元数据,而docker save命令会保留原文件的历史信息。
解释:将导出的文件变成镜像。当然,这个也可以用docker load命令来执行。
解释:查看容器具体信息,比如:容器ID,创建时间,路径,状态,镜像,配置等
解释: 查看容器内进程信息
解释:查看容器的内存、CPU、存储、网络等使用情况
-a,-all:输出所有容器统计信息
-format string: 格式化输出信息
-no-stream:不持续输出,默认会自动更新持续实时结果
-no-trunc:不截断输出信息
解释:第一行命令为将test容器的temp文件夹复制到主机的data文件夹下
第二行的命令为将主机的data文件夹复制到test容器的tmp文件夹下
解释:查看容器内的数据修改
解释:查看test容器的端口映射情况
解释:修改容器的一些运行时配置。主要是一些资源限制配额。
docker镜像拉取
从镜像仓库中拉取或者更新指定镜像
如果不迟虚写TAG,会默认拉取latest的
客户现场不能访问外网的话,需要提前准备好镜像的tar包,然后在客户环境中使用docker load命令导入镜像
1使扮型用docker save命令将镜像保存为压缩包厅旦猜,需要镜像已经存在于docker中
docker save -o xxx.tar IMAGE [IMAGE...]
2.使用docker load命令导入镜像
docker load : 导入使用 docker save 命令导出的镜像
Docker系列二:玩转单个容器
那么对于宿主机上运行的服务比,在容器内运行有以下两种优势
1.配置:将服务放入容器,提前配置好提供服务所需的程序、库、配置文件等,无须担心宿主机是否有这些组件。若有需要也很容易将容器迁移到另一个宿主机上。
2.隔离:每个容器有自己单独的文件系统和网络接口,能按需运行多个相同的服务容器。每个容器使用各自的IP和端口来公开其服务,这些服务之间不会彼此冲突。
在虚拟机内安装容器测试后发现虚拟机内的容器性能接近于物理机。
1.查看容器镜像 docker ps -a
2.进入容器里面 docker exec -it f74716b965d7 /bin/bash 或者 docker exec -it f74716b965d7 "bash"
3.在容器内运行命令 apt-get update
如图所示可以安装想装的软件了 apt-get install vim
registry是一个位置——在那里能够找到许多repository相关联的镜像。
repository是一个名字——Docker用它来代表多个镜像。
docker search ubuntu
docker search -s 10 ubuntu
国内从 Docker Hub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和国内很多云服务商都提供了国内加速器服务,我们以 Docker 官陵银方加速器 为例。
CentOS 7
请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)
之后重新启动服务。
配置加速器之后,如果拉取镜像仍然十分缓慢,请手动检查加速器配置是否尺雀宴生效,在命令行执行 docker info ,岁厅如果从结果中看到了如下内容,说明配置成功。
搜索想要的镜像
然后根据旁边的提示 docker pull oraclelinux
拉取镜像并不是将镜像放入系统的唯一方式,可以将本地系统的镜像保存到一个tar文件,然后复制传输到另外一个系统中,在那里装载他。
docker save 命令会保存与特定的repository关联所有的镜像。
查看docker下的镜像,选择mysql进行打包。
docker images
docker save -o mysql.tar mysql
du -sh mysql.tar
修改mysql权限,root注意要有
用SCP命令传输tar文件到另外一个系统中【centos传输至unbuntu】
【unbuntu需要scp能连接上】
sudo apt install docker.io//unbuntu安装docker
scp mysql.tar 192.168.140.134:/tmp
在unbuntu中装载mysql.tar
docker load -i /tmp/mysql.tar
docker export -o pg_1018export.tar 63
docker import pg_1018export.tar pg3
但是需要注意运行导入的镜像的时候必须带command,否则容器不能运行。
在新的地方装载
docker save保存的是镜像(image),docker export保存的是容器(container)
查看镜像,进行打包
查看容器,进行打包
对比两者打包后的大小和内容
对比可以看到容器内容是一个linux的文件目录
镜像的内容拆开看到:
其实就是一个分层的系统
Docker镜像实际上就是由这样的一层层文件进行叠加起来的,上层的文件会覆盖下层的同名文件。
如果将镜像中各层文件合并到一起,基本就是容器打包后内容。由于镜像里的各层文件会有很多重复文件,所以镜像打包后会比容器大那么一点。
简单地总结就是下面这样
save — 镜像 打包—用 load 载入,用import可以载入但启动不了。
export — 容器 打包—用 import 载入,用load不能载入,docker load必须要载入的是一个分层文件系统。
查看正在运行或暂停容器 docker ps
查看停止的容器 docker ps -a
启动 docker start CONTAINER ID
停止 docker stop CONTAINER ID
重启 docker restart CONTAINER ID
暂停 docker pause CONTAINER ID
取消暂停 docker unpause CONTAINER ID
docker run 创建新的容器
语法
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
详细见
以mysql的镜像为例子
[root@localhost text]# docker run -it mysql /bin/bash
然后也可以达到进入容器内的相同效果
dockersave很慢
dockersave很慢是镜像凯滑地址导致盯巧腊。dockersave很慢的原因宽桐是默认的镜像地址是国外的,只要配置一下docker的镜像地址就可以了。
Docker的save和export命令的区别
docker export和save的区别。操作系统编程语言问题。运行中的镜像称为容器。你可以修改容器(比如删除一激如个文件)昌蔽,但这些修改不会影响到镜像。不过,你使用docker commit 命令可以把一个正在运行的容器变成一个新的镜像。
Export命明迅启令用于持久化容器(不是镜像)。
Save命令用于持久化镜像(不是容器)。
关于dockersave和dockersave目录的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。