良许Linux教程网 干货合集 Linux系统如何进入docker容器

Linux系统如何进入docker容器

当我们安装并且运行docker之后就要面临一个问题就是如何进入 docker内部?进入docker的方法有许多可以使用  ssh登录、第三方工具(nsenter、nsinit)、docker提供的工具(attach、exec) 等,下面良许教程网为大家详细讲解一下Linux系统进入docker容器教程。

Linux系统如何进入docker容器

登录容器的方式             ssh登录                                 第三方工具(nsenter、nsinit)                                                       docker提供的工具(attach、exec)                            
优点           符合平时登录服务器习惯,不用额外学习 使用方便快捷 使用方便快捷              
缺点 秘钥管理ssh升级监控 需要学习第三方工具使用规则docker宿主机root权限 使用attach登录容器,exit退出容器docker宿主机root权限同屏
适用范围             适用docker宿主机登录至容器内部远程登录该容器 适用docker宿主机登录至容器内部 适用docker宿主机登录至容器内部
  • SSH使用方法:ssh用户@IP地址 -p 端口一般ssh登录走22端口,但是在docker中bridge网络模式使用NAT做端口映射,端口需要特殊标注适用范围:docker宿主机内部登录容器,外部终端直接登录容器 优点:符合管理员、开发者登录服务器的习惯,不需要进行额外的学习 缺点:1.秘钥管理

    如果将秘钥写到镜像中,当需要更新秘钥时需要重新制作镜像,部署,重启容器,虽然这个步骤繁琐,但是个人认为还是安全的。如果将秘钥写到卷中,首先要保证该容器没有这个卷的写权限,否则存在秘钥被篡改的风险。

    2.ssh 升级或打补丁

    ssh 有漏洞或者版本升级时,需要对每一个容器进行打补丁或者升级操作

  • docker attach

     使用方法 :docker attach [container name]

     适用范围: docker 宿主机内部登录容器

     优点: 快捷方便

    缺点 1.exit 后直接退出该container

          \2. 多屏同步 这相当于同一时间最多只能有一个终端连接容器

img

img

  • docker exec使用方法:docker exec -it [container name] [command]适用范围:docker宿主机内部登录容器优点:快捷方便缺点:外部终端无法使用这种方法登录容器使用参数介绍-i, –interactive        Keep STDIN open even if not attached ————交互 -t, –tty            Allocate a pseudo-TTY————分配伪终端一般情况会使用-it这个组合命令,如果单用也只能单独使用-i命令 -i 参数不会产生伪终端,但是会有正确的返回

img

     使用-it时,则和我们平常操作console界面类似。而且也不会像attach方式因为退出,导致整个容器退出。这种方式可以替代ssh或者nsenter、nsinit方式,在容器内进行操作。

  • nsenter工具

     nsenter工具的安装:

     wget https://www.kernel.org/pub/linux/utils/util-linux/v2.28/ util-linux-2.28.tar.gz

     tar -xzvf util-linux-2.28.tar.gz    

     cd util-linux-2.28

    ./configure –without-ncurses

    make nsenter

    cp nsenter /usr/local/bin

    安装完成后,使用nsenter —help 命令查看,可以看到使用方法及参数则证明安装成功。

img

      使用nsenter 命令登录docker 容器

img

      在使用nsenter登录docker 容器时,一般使用前6个参数(我看别人都这么写的,想了想原因,可能使用前6个参数就可以涵盖网络,磁盘,进程管理操作系统基本的信息,我尝试只使用其中一个或几个参数登录容器,成功了但是操作系统功能使用上受限制,比如无法使用网络配置功能等)。

至此关于Linux系统进入docker容器的教程分享结束,欢迎大家在评论区留言。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

137e00002230ad9f26e78-265x300

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部