本文共 1968 字,大约阅读时间需要 6 分钟。
docker attach <container_name>/<container_id>
通过container_name连接容器
开启一个docker容器后通过ps进行查看,并通过attach <container_name>连接容器
通过container_id连接容器
开启一个docker容器后通过ps进行查看,并通过attach <container_id>连接容器
参数介绍:
参数 | 说明 |
--detach-keys[=[]] | 指定退出attach模式的快捷键序列,默认是 CTRL-p,CTRL-q |
--no-stdin=true | false | 是否关闭标准输入,默认是保持打开 |
--sig-proxy=true | false | 是否代理收到的系统信号给应用进程,默认为true |
docker exec <container_name>/<container_id> 需要执行的命令
通过container_name运行容器内命令
通过container_id运行容器内命令
参数介绍:
参数 | 说明 |
-i, --interactive=true | false | 打开标准输入接受用户输入命令,默认为false |
--privileged=true | false | 是否给执行命令以高权限,默认为false |
-t, --tty=true | false | 分配伪终端,默认为false |
-u, --user="" | 执行命令的用户名或ID |
若需要打开终端,则使用docker exec -it <container_name> /bin/bash
通过指定-it参数来保持标准输入打开,并且分配一个伪终端,通过exec命令对容器执行操作是最为推荐的方式
docker rm <container_name>
删除容器有两种情况,一种是容器正在运行,那么就需要使用如下命令:
docker rm -f <container_name>进行强制删除
另外一种情况则是容器没有运行时,就使用如下命令:
docker rm <container_name>删除容器
参数介绍:
参数 | 说明 |
-f, --force=false | 是否强行终止并删除一个运行中的容器 |
-l, --link=false | 删除容器的连接,但保留容器 |
-v, --volumes=false | 删除容器挂载的数据卷 |
docker rmi <image_name>:<tag>
删除镜像由两种情况,一种是镜像正在被容器实例运行中,那么就需要使用如下命令:
docker rmi -f <image_name>:<tag>进行强制删除
另外一种情况则是镜像创建的容器实例没有运行,就使用如下命令:
docker rmi <image_name>:<tag>删除镜像
1、导出容器
导出容器是指导出一个已经创建的容器到一个文件,不管此时这个容器是否处于运行状态,使用docker export命令
docker export [-o | --output [=""]] container_name
可以通过-o选项来指定导出的tar文件名,也可以直接通过重定向来实现
实例:
docker export -o test_for_run.tar ce5
docker export e81 > test_for_stop.tar
可将导出的tar文件传输到其他机器上,然后再通过导入命令导入到系统中,从而实现容器的迁移
2、导入容器
导出的文件可以使用docker import命令导入变成镜像,命令格式为
docker import [-c | --change [= [] ] ] [-m | --message[=MESSAGE]] file|URL| - [REPOSITORY[:TAG]]
用户可以通过-c,--change=[]选项在导入的同时执行对容器进行修改的Dockerfile指令
实例:
docker import test_for_run.tar - test/ubuntu:v1.0
3、docker load与docker import的区别
docker load命令可以导入镜像存储文件到本地镜像库,docker import命令可以导入一个容器快照到本地镜像库
这两者的区别在于容器快照文件将丢弃所有的历史记录和元数据信息(仅保存容器当时的快照状态),而镜像存储文件将保存完整记录,体积也更大。此外,从容器快照文件导入时可以重新指定标签等元数据信息。
转载地址:http://xuchf.baihongyu.com/