zoukankan      html  css  js  c++  java
  • 如何进入docker容器

    ** docker run [可以加参数必须在镜像前] 镜像名称 /bin/bash "执行的命令"**

    ** 建议运行一个容器使用 --name 使用名称 **

    ** 因为管理容器的时候只有name 和 ID 是比较方便的而且是唯一标识 **

    ** docker run --name mydocker -t -i(标准输入) 镜像name /bin/bash "[可以是命令]"**

    ---不建议使用这种方式,退出后容器就停止了

    方式一

    ** 内置命令 attach **

    ** 起来后怎么进去 bin/bash (进不去)一个容器干一件事,这是docker的设计理念**

    ** docker attach mydocker 可以实现进入容器**

    -----此方法不太稳妥不建议

    方式二

    ** 使用 nsenter **

    首先需要安装工具

    这里以centos7为例下载 util-linux

    yum install -y util-linux

    这种方法是根据pid来进入容器

    ** 需要知道第一个进行的pid **

    ** 获取pid方式 固定格式**

    docker inspect -f "{{.State.Pid}}" mydocker或者ID

    然后使用nsenter

    ** nsenter -p (pid) **

    ** 使用 **

    nsenter -t pid号 -m -u -i -n -p

    如图所示

    这样一步一步操作有点麻烦我们可以写一个脚本进行调用

    示例:

    脚本

     #!/bin/bash
     docker_in(){
    	name_ID=$1
    	PID=$(docker inspect -f "{{.State.Pid}}" $1)
    	nsenter -t $PID -m -u -i -n -p
     }
     docker_in $1
    

    然后就以是使用

    docker_in 跟上容器name或者ID

    ----强烈建议使用该方式,适用于生产环境

    方式三
    docker exec mydocker whoami

    只为了看看命令

    ** docker exec -it mydocker /bin/bash**
    ---不推荐使用,如果只是想要看一个命令 可以使用

  • 相关阅读:
    开发应用资料大全
    shutil库文件的操作
    搭建appium自动化测试环境
    python实现语音录入识别
    go解析markdown转成html
    go指定分隔符格式化时间
    go语言中使用正则表达式
    django_websocket实现简单聊天室
    PyQt5显示日期选择框,获取日期保存文件
    python解决迅雷下载限制的方法
  • 原文地址:https://www.cnblogs.com/zhuhuibiao/p/14211990.html
Copyright © 2011-2022 走看看