进入正在运行的 docker 容器(docker container)

在使用 docker 容器的时候,我们总会想看看容器内部长什么样子:我们使用 docker exec 命令可以满足我们的期望:

?  compose docker exec --help

Usage:    docker exec [OPTIONS] CONTAINER COMMAND [ARG...]

Run a command in a running container

Options:
  -d, --detach               Detached mode: run command in the background
      --detach-keys string   Override the key sequence for detaching a container
  -e, --env list             Set environment variables
  -i, --interactive          Keep STDIN open even if not attached
      --privileged           Give extended privileges to the command
  -t, --tty                  Allocate a pseudo-TTY
  -u, --user string          Username or UID (format: <name|uid>[:<group|gid>])
  -w, --workdir string       Working directory inside the container

加入我们的容器的名字叫: compose_web_1 使用如下命令:

docker exec  -it compose_web_1 /bin/sh

我发现内部是这么个情况:

/code # cd ..
/ # ls
bin    code   dev    etc    home   lib    media  mnt    proc   root   run    sbin   srv    sys    tmp    usr    var
/ # ls bin/
arch           chown          dumpkmap       fsync          ipcalc         ls             mountpoint     pipe_progress  run-parts      su             watch
ash            conspy         echo           getopt         kbd_mode       lzop           mpstat         printenv       sed            sync           zcat
base64         cp             ed             grep           kill           makemime       mv             ps             setpriv        tar
bbconfig       date           egrep          gunzip         link           mkdir          netstat        pwd            setserial      touch
busybox        dd             false          gzip           linux32        mknod          nice           reformime      sh             true
cat            df             fatattr        hostname       linux64        mktemp         pidof          rev            sleep          umount
chgrp          dmesg          fdflush        ionice         ln             more           ping           rm             stat           uname
chmod          dnsdomainname  fgrep          iostat         login          mount          ping6          rmdir          stty           usleep

目前已经进入 docker container 内部了,这是里面的文件分布的情况,具体其中是什么原理,是一个linux 虚拟机吗? 是完整的linux 内核?还是什么,我内心还有疑问,这个以后的博文中在说吧! 查看上面的命令中,busybox这个命令也引起的我的兴趣?过会调研一下。

保持更新,转载请注明出处。

原文地址:https://www.cnblogs.com/xuyaowen/p/docker_exec_it.html

时间: 2024-12-10 12:16:17

进入正在运行的 docker 容器(docker container)的相关文章

教你如何修改运行中的docker容器的端口映射

在docker run创建并运行容器的时候,可以通过-p指定端口映射规则.但是,我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改.当docker start运行容器后并没有提供一个-p选项或设置,让你修改指定端口映射规则.那么这种情况我们该怎么处理呢?今天Docker君教你如何修改运行中的docker容器的端口映射? 方法一:删除原有容器,重新建新容器 这个解决方案最为简单,把原来的容器删掉,重新建一个.当然这次不要忘记加上端口映射. 优缺点:优点是简单快捷,在测试环境使用较多.缺点是如

[转帖]教你如何修改运行中的docker容器的端口映射

在docker run创建并运行容器的时候,可以通过-p指定端口映射规则.但是,我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改.当docker start运行容器后并没有提供一个-p选项或设置,让你修改指定端口映射规则.那么这种情况我们该怎么处理呢?今天Docker君教你如何修改运行中的docker容器的端口映射? 方法一:删除原有容器,重新建新容器 这个解决方案最为简单,把原来的容器删掉,重新建一个.当然这次不要忘记加上端口映射. 优缺点:优点是简单快捷,在测试环境使用较多.缺点是如

如何修改运行中的docker容器的端口映射

在docker run创建并运行容器的时候,可以通过-p指定端口映射规则.但是,我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改.当docker start运行容器后并没有提供一个-p选项或设置,让你修改指定端口映射规则.那么这种情况我们该怎么处理呢?今天Docker君教你如何修改运行中的docker容器的端口映射? 方法一:删除原有容器,重新建新容器 这个解决方案最为简单,把原来的容器删掉,重新建一个.当然这次不要忘记加上端口映射. 优缺点:优点是简单快捷,在测试环境使用较多.缺点是如

docker容器运行后退出,怎么才能一直运行?【转】

现象 启动docker容器 docker run –name [CONTAINER_NAME] [CONTAINER_ID] 查看容器运行状态 docker ps -a 发现刚刚启动的mydocker容器已经退出 原因 docker容器的主线程(dockfile中CMD执行的命令)结束,容器会退出 办法 可以使用交互式启动 docker run -i [CONTAINER_NAME or CONTAINER_ID] 上面的不太友好,建议使用后台模式和tty选项 docker run -dit [

Docker容器学习梳理--小知识点补充

之前已经梳理了Docker的相关使用事项,这里再补充一些,以便加深掌握程度.1)docker run指令 [[email protected] ~]# docker run --help : docker run [OPTIONS] IMAGE [COMMAND] [ARG...] Run a command in a new container -a, --attach=[] Attach to STDIN, STDOUT or STDERR --add-host=[] Add a custo

Docker容器是否可以改变世界?

Docker容器是否可以改变世界? 2016-01-15 杜亦舒 2016年了,很多大牛开始预测技术趋势,其中一个普遍的观点我也很认同: Docker会更加流行,会改变程序世界 2015年的上半年我接触了Docker,熟悉之后,真有一点震惊的感觉,太方便了,可以解决很多问题 Container 通常翻译为容器,但还有另一个意思,就是"集装箱" 集装箱是21世纪最伟大的发明之一,它改变了世界货物运输体系,造就了一个高度自动化.标准化.低成本的物流体系,促进了经济的全球化发展 程序界也出现

Docker容器简用

一.安装 ①RedHat/CentOS下的docker安装 RedHat/CentOS必须要6.6版本以上,或者7.x才能安装docker,建议在RedHat/CentOS 7上使用docker,因为RedHat/CentOS 7的内核升级到了kernel 3.10,对lxc容器支持更好. # yum -y install docker # systemctl start docker ②Ubuntu下docker安装 # sudo apt-get install docker.io # ser

如何进入docker容器

在使用docker创建了容器之后,大家比较关心的就是如何进入该容器了,其实进入Docker容器有好几多种方式,这里我们就讲一下常用的几种进入Docker容器的方法. 1.使用docker attach进入Docker容器 Docker提供了attach命令来进入Docker容器.接下来我们创建一个守护态的Docker容器,然后使用docker attach命令进入该容器. $ sudo docker run -itd ubuntu:16.04 /bin/bash 然后我们使用docker ps查

12、《每天5分钟玩转Docker容器技术》学习-Docker命令之容器操作命令

a) Docker ps 命令 docker ps : 列出容器 docker ps [OPTIONS] -a :显示所有的容器,包括未运行的. -f :根据条件过滤显示的内容. --format :指定返回值的模板文件. -l :显示最近创建的容器. -n :列出最近创建的n个容器. --no-trunc :不截断输出. -q :静默模式,只显示容器编号. -s :显示总的文件大小. l 实例 列出所有在运行的容器信息. 列出最近创建的5个容器信息. 列出所有创建的容器ID. b) Docke

11、《每天5分钟玩转Docker容器技术》学习-Docker命令之容器生命周期管理

a) Docker create 命令 docker create :创建一个新的容器但不启动它 docker create [OPTIONS] IMAGE [COMMAND] [ARG...] -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项: -d: 后台运行容器,并返回容器ID: -i: 以交互模式运行容器,通常与 -t 同时使用: -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用: --name="nginx-lb":