1. 进入终端,sudo -i,切换root,输入docker -d

    2. 打开另一个终端,切换root,输入docker search ubuntu,大概如下结果:

    3. NAME                           DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
      ubuntu                         Ubuntu is a Debian-based Linux operating s...   2306      [OK]       
      ubuntu-upstart                 Upstart is an event-based replacement for ...   33        [OK]       
      torusware/speedus-ubuntu       Always updated official Ubuntu docker imag...   25                   [OK]
      tleyden5iwx/ubuntu-cuda        Ubuntu 14.04 with CUDA drivers pre-installed    18                   [OK]
      ubuntu-debootstrap             debootstrap --variant=minbase --components...   14        [OK]       
      guilhem/vagrant-ubuntu                                                         11                   [OK]

    4. 输入docker pull ubuntu,系统就会从第一个下载镜像

    5. 下载完成后,可以输入docker images查看是否已经下载镜像到本地

    6. 启动一个ubuntu容器,进入bash,docker run -it ubuntu /bin/bash,

    7. 此时应该可以看到 root@bc6a0a7912b1:/# ,证明已经成功开动了容器,并且进入容器的bash,执行apt update

    8. 修改容器的root密码:passwd,  直至输入新的密码,例如:123456

    9. 安装vim,apt-get install vim -y

    10. 安装容器的openssh-server,输入 apt-get install openssh-server -y

    11. 成功安装后,vim /etc/ssh/sshd_config,修改下面两个配置

    12. PermitRootLogin yes  
      UsePAM no

    13. 启动ssh服务,service ssh start

    14. 退出容器,输入exit,然后输入docker ps -a,查看容器的ID

    15. 提交容器成为新的镜像,例如叫做ubuntu-ssh,输入docker commit 容器ID ubuntu-ssh

    16. 启动这个镜像的容器,并映射本地的一个闲置的端口(例如10000)到容器的22端口,并启动容器的sshd docker run -d -p 10000:22 ubuntu-ssh /usr/sbin/sshd -D

    17. 现在打开新的终端,输入ssh root@127.0.0.1 -p 10000,如果能链接成功,会要求输入密码的,输入刚才的123456就可以进入容器的终端了

Linux主机如何用ssh去登录docker容器的步骤的更多相关文章

  1. 宿主机ssh免密登录docker容器

    一.检查系统内核 二.安装docker 1.yum install docker  -y 2.docker version                    #查看docker版本 3.syste ...

  2. ssh登录docker容器

    ssh登录docker容器1.启动一个docker容器# docker run -t -i ubuntu/ruby:v1 /bin/bash2.然后在容器里,安装openssh-server open ...

  3. linux中如何用root去修改其他用户的密码

    linux中如何用root去修改其他用户的密码 昨天linux实验课,我有很多自己想摸索的东西.今天周五,本是下午一二节是编译的实验,可强烈的欲望让我今早就来实验室了,摸索吧,碰到了这个问题....  ...

  4. 宿主机-免密登录Docker容器

    CentOS7 安装Docker 讨论QQ:1586558083 目录 一.检查系统内核 二.安装Docker 2.1 安装 2.2 查看docker版本 2.3 启动docker 三.建立docke ...

  5. 创建支持ssh服务的docker容器和镜像

    http://www.kongxx.info/blog/?p=57 1. 这里使用的centos作为容器,所以首先下载centos的imagessudo docker pull centos 2. 下 ...

  6. 如何在Linux上创建,列出和删除Docker容器

    本篇文章介绍的内容是关于在Linux机器上创建,列出和删除docker容器,下面我们来看具体的内容. 1.启动Docker容器 使用下面的命令启动新的Docker容器.这将启动一个新的容器,并为你提供 ...

  7. linux expect详解(ssh自动登录)

    shell脚本实现ssh自动登录远程服务器示例: #!/usr/bin/expect spawn ssh root@192.168.22.194 expect "*password:&quo ...

  8. SSH远程登陆docker容器

    环境: Ubuntu 16.04(mac osx的VMware Fushion环境) 任务: Ubuntu 16.04通过SSH登陆docker(目的是为了运行在其他服务器的Jenkins访问dock ...

  9. Linux高级运维 第八章 部署docker容器虚拟化平台

    8.1  Docker概述 实验环境: CENTOS7.4-63 64位 Dcoker概述 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到 ...

随机推荐

  1. optparse模块解析命令行参数的说明及优化

    一.关于解析命令行参数的方法 关于“解析命令行参数”的方法我们一般都会用到sys.argv跟optparse模块.关于sys.argv,网上有一篇非常优秀的博客已经介绍的很详细了,大家可以去这里参考: ...

  2. dialog--not attached to window manager

    该异常表示view没有添加到窗口管理器,通常是我们dismiss对话框的时候,activity已经不存在了,建议不要在非UI线程操作对话框. [解决方案]:常发生这类Exception的情形都是,有一 ...

  3. failed to launch: nice -n 0 /home/hadoop/spark-2.3.3-bin-hadoop2.7/bin/spark-class org.apache.spark.deploy.worker.Worker --webui-port 8081 spark://namenode1:7077

    spark2.3.3安装完成之后启动报错: [hadoop@namenode1 sbin]$ ./start-all.shstarting org.apache.spark.deploy.master ...

  4. linux下新建(touch)\复制(cp)\剪切(mv)\删除(rm)文件

    touch :新建多个文件,中间用空格隔开 touch file1 file2 cp: mv:剪切 rm:删除文件

  5. Docker删除镜像

    docker images往往不知不觉就占满了硬盘空间,为了清理冗余的image,可采用以下方法: 1.进入root权限 sudo su 2.停止所有的container,这样才能够删除其中的imag ...

  6. Java - 19 Java 异常处理

    Java 异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误java.lang.Error:如果你用 ...

  7. implementation compile的区别

    implementation不可以依赖传递:依赖对app Module 是不可见的 compile可以依赖传递:依赖对app Module 是可见的 AndroidStudio升级到3.0以上后,第一 ...

  8. angularjs路由传递参数

    ui-sref.$state.go 的区别 ui-sref 一般使用在 <a>...</a>: $state.go('someState')一般使用在 controller里面 ...

  9. day9笔记整理,记忆

    函数的使用:一 定义函数的三种形式 1.1 无参函数 1.2 有参函数 1.3 空函数二 调用函数的三种形式 2.1 语句形式    def foo():   print('from foo')    ...

  10. JVM总结-垃圾回收(下)

    大部分的 Java 对象只存活一小段时间,而存活下来的小部分 Java 对象则会存活很长一段时间. 之所以要提到这个假设,是因为它造就了 Java 虚拟机的分代回收思想.简单来说,就是将堆空间划分为两 ...