Docker容器进入退出的几种方式

作者&投稿:宗服 (若有异议请与网页底部的电邮联系)
~

重启httpd(service httpd restart)和rados

在生产环境中排除了使用docker attach命令进入容器之后,相信大家第一个想到的就是ssh。在镜像(或容器)中安装SSH Server,这样就能保证多人进入,但是使用了Docker容器之后不建议使用ssh进入到Docker容器内。关于为什么不建议使用,请参考如下文章:
为什么不需要在 Docker 容器中运行 sshd

在上面两种方式都不适合的情况下,还有一种比较方便的方法,即使用nsenter进入Docker容器。关于什么是nsenter请参考如下文章:

https://github.com/jpetazzo/nsenter
在了解了什么是nsenter之后,系统默认将我们需要的nsenter安装到主机中
如果没有安装的话,按下面步骤安装即可(注意是主机而非容器或镜像)
具体的安装命令如下:

安装好nsenter之后可以查看一下该命令的使用。

  nsenter可以访问另一个进程的名称空间。所以为了连接到某个容器我们还需要获取该容器的第一个进程的PID。可以使用docker inspect 命令来拿到该PID。

docker inspect命令使用如下:

inspect命令可以分层级显示一个镜像或容器的信息。比如我们当前有一个正在运行的容器

可以使用docker inspect来查看该容器的详细信息。

由其该信息非常多,此处只截取了其中一部分进行展示。如果要显示该容器第一个进行的PID可以使用如下方式

在拿到该进程PID之后我们就可以使用nsenter命令访问该容器了。

其中的3326即刚才拿到的进程的PID

当然,如果你认为每次都输入那么多参数太麻烦的话,网上也有许多做好的脚本供大家使用。

地址如下:

http://yeasy.gitbooks.io/docker_practice/content/container/enter.html

http://www.tuicool.com/articles/eYnUBrR

四、使用docker exec进入Docker容器

除了上面几种做法之外,docker在1.3.X版本之后还提供了一个新的命令exec用于进入容器,这种方式相对更简单一些,下面我们来看一下该命令的使用:

接下来我们使用该命令进入一个已经在运行的容器




如何在 Docker 容器中运行 Kali Linux 2.0
docker pull kalilinux\/kali-linux-docker Pull Kali Linux docker 下载完成后,运行下面的命令来找出你下载的 docker 镜像的 ID。docker images Kali Linux Image ID 现在运行下面的命令来从镜像文件启动 kali linux docker 容器(这里需用正确的镜像ID替换)。docker run -i -t 198cd6df71ab3\/bin\/...

Docker容器中安装Docker
最近用到Jenkins,使用了Docker来提供服务,但是在构建步骤中又希望能够使用Docker去生成镜像,因此需要实现在Docker容器中去安装Docker,其实也就是在特定的系统环境下安装Docker,但是实际操作中可能还会出现其他问题。以Jenkins\/Jenkins容器为例子。进入jenkins容器:一般安装前都需要知道当前系统信息,没有安装...

终于有人把Docker讲清楚了,Docker入门教程,原来这么简单...
•018.Docker视频教程:Docker使用初体验-Docker镜像启动运行 •019.Docker视频教程:Docker使用初体验-访问容器中的Tomcat服务 •020.Docker视频教程:Docker使用初体验-Docker的网络访问机制 •021.Docker视频教程:Docker使用初体验-进入Docker容器内部 •022.Docker视频教程:...

Docker容器网络-实现篇
通常,Linux容器的网络是被隔离在它自己的Network Namespace中,其中就包括:网卡(Network Interface)、回环设备(Loopback Device)、路由表(Routing Table)和iptables规则。对于一个进程来说,这些要素,就构成了它发起和响应网络请求的基本环境。我们在执行 docker run -d --name xxx 之后,进入容器...

Docker基础:Docker可视化面板portainer介绍
注意:不要修改-v的挂载目录,否则后续运行会出现错误 3、访问浏览器访问启动好的地址 localhost:9100 4、功能介绍打开页面后,创建登录用户,输入密码,点击创建用户。然后进入主页面 点击docker标签页,然后点击connect。登录之后的主页面 服务器本机docker运行情况统计 点击进入详情,里面包含容器、镜像、...

如何解决docker容器dockerrun-d后台启动不了的问题?
解决 Docker 容器 dockerrun-d 后台启动不了的问题,首先需要关注 Docker 的网络模式。默认情况下,Docker 容器采用 bridge 模式,这表示容器与主机之间通过虚拟网桥进行网络连接。在 none 模式下,容器无法与其他系统通信,这可能导致启动失败。而在 host 模式下,容器直接使用主机的网络,暴露了潜在的安全...

docker 容器自动启动run
部署项目服务器时,为了应对停电等情况影响正常web项目的访问,会把Docker容器设置为开机自动启动。如果创建时未指定 --restart=always ,可通过update 命令设置 Docker容器的重启策略是面向生产环境的一个启动策略,在开发过程中可以忽略该策略。Docker容器的重启都是由Docker守护进程完成的,因此与守护进程息息...

【教程分享】一键部署Redis,轻松搞定Docker安装和配置!
开始部署教程:一键安装与配置 Redis Docker 容器 1. 下载: 选择下载 Redis 6.2.7 版本,确保文件完整。2. 配置文件: 为便捷管理,创建新的目录和配置文件,以便后续挂载。3. 启动: 在 Docker 中启动 Redis 6.2.7 容器,映射内部 6379 端口到主机,启用数据持久化,并指定自定义配置文件启动服务...

docker从容器中怎么访问宿主机
注意,通过192.168.99.1访问宿主机,等于换了一个ip,如果数据库或中间件限制了本机访问或者做了ip段限制,要记得添加192.168.99.1到白名单。Docker容器运行的时候有 host 、 bridge 、 none 三种网络可供配置。默认是 bridge ,即桥接网络,以桥接模式连接到宿主机; host 是宿主网络,即与宿主机...

Docker 容器后台运行和前台运行的区别
-d=false:Detached mode:Run container in the background,printnew container id 后台运行 (-d)后台运行直接指定 (-d=true or just -d),这样的话所有的操作类似网络连接,共享操作等等都不会再接受命令行的命令控制。你就要使用attach命令 来进入一个容器,再管理它,注意当你attach链接到一个容器...

荥经县15899032819: docker进入容器 之后怎么退出 -
壤剑喜辽: ctrl+d 退出容器且关闭, docker ps 查看无ctrl+p+q 退出容器但不关闭, docker ps 查看有

荥经县15899032819: docker进入容器之后如何退出呢? -
壤剑喜辽: 解决方法: 1、安装Docker 借助apt-get命令.2、$ sudo apt-get install docker.io 为了允许非根用户也可以运行Docker,将你自己添加到docker群组.下面这个命令会允许当前用户运行Docker,无需根用户权限.Docker 容器操作退出后进入解...

荥经县15899032819: 如何进入,退出docker的container -
壤剑喜辽: docker exec -it 容器id /bin/bash 新启终端进入容器 在容器中直接exit就退出容器返回宿主机了

荥经县15899032819: docker下容器怎么执行命令? -
壤剑喜辽: Docker中我们一般会有两种执行命令的方式,一种是直接进入容器的命令行,在终端执行并查看结果,一种是在后台执行,并不会在终端查看结果.1、进入容器命令行 su root docker run -i -t ubuntu:16.04/bin/bash#或者执行下面这句docker run ...

荥经县15899032819: 如何进入 Docker 容器 -
壤剑喜辽: 如何进入Docker容器概述 在使用Docker创建了容器之后,大家比较关心的就是如何进入该容器了,其实进入docker容器有好几多种方式,这里我们就讲一下常用的几种进入Docker容器的方法. 进入Docker容器比较常见的几种做法如下: 使用...

荥经县15899032819: mac docker attach 怎么退出 -
壤剑喜辽: docker run指定的命令如果不是那些一直挂起的命令(比如运行top,不断echo),就是会自动退出的.-d命令是设置detach为true,根据官方的文档,意思是让这个命令在后台运行,但并不是一直运行(在一个正常的Linux Terminal中运行/bin/...

荥经县15899032819: 如何进入Docker容器 -
壤剑喜辽: Docker容器运行后,如何进入容器进行操作呢?起初我是用SSH.如果只启动一个容器,用SSH还能应付,只需要将容器的22端口映射到本机的一个端口即可.当我启动了五个容器后,每个容器默认是没有配置SSH Server的,安装配置SSHD...

荥经县15899032819: docker 退出容器 在怎么进入 -
壤剑喜辽: docker 退出容器 在怎么进入 先用docker ps -a找到对应的已经停止了的容器id,然后用docker start -ia <containerid>启动容器

荥经县15899032819: Docker的镜像和容器的区别 -
壤剑喜辽: 一、Docker镜像要理解Docker镜像和Docker容器之间的区别,确实不容易.假设Linux内核是第0层,那么无论怎么运行Docker,它都是运行于内核层之上的.这个Docker镜像,是一个只读的镜像,位于第1层,它不能被修改或不能保存状态...

荥经县15899032819: docker容器运行后退出,怎么才能一直运行 -
壤剑喜辽: 运行多进程Docker容器的方法如下:1、使用Shell脚本依次启动Kubernetes的各个组件即可.以下为start-kubernetes.sh2、然后在Dockerfile中,将start-kubernetes.sh指定为Docker容器默认执行的命令即可.3、需要注意的一点在于,start-...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网