zoukankan      html  css  js  c++  java
  • Docker技术入门之---为镜像添加SSH服务(7)

    本章将详细介绍创建容器的两种方法:

    • 基于Docker commit命令创建
    • 基于Dockerfile创建

    基于docker commit命令创建一个容器

       首先,启动一个centos容器

      # docker run -it centos /bin/bash

      安装openssh-server net-tools服务

      # yum -y install openssh-server net-tools

      修改/etc/ssh/sshd_config配置文件,并将HostKey /etc/ssh/ssh_host_ecdsa_key和HostKey /etc/ssh/ssh_host_ed25519_key注释掉。

      HostKey /root/.ssh/id_rsa
      #HostKey /etc/ssh/ssh_host_rsa_key
      #HostKey /etc/ssh/ssh_host_dsa_key
      #HostKey /etc/ssh/ssh_host_ecdsa_key
      #HostKey /etc/ssh/ssh_host_ed25519_key  

      使用命令ssh-keygen生成秘钥对

      # ssh-keygen -t rsa

       通过命令将容器commit成镜像。

      # docker commit af81653210eb sshd/centos:0.1

      启动新生成的镜像

      # docker run -itd -p 2222:22 sshd/centos:0.1 /bin/bash

      在宿主主机(192.168.1.200)或其他主机上上,可以通过SSH访问2222端口来登录容器

      # ssh  10.10.0.164 -p 2222

    使用Dockerfile创建

      创建工作目录

      # mkdir docker

      在docker中创建Dockerfile

    # 设置继承镜像
    FROM centos:latest
    # 提供一些作者的信息
    MAINTAINER weidong (weidong@docker.com)
    ENV ROOT_PASSWORD 123456
    # 下面开始安装ssh服务
    RUN yum -y install openssh-server net-tools vim
    RUN echo $ROOT_PASSWORD |passwd --stdin root
    
    RUN ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
    RUN ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
    
    EXPOSE 22
    
    CMD ["/usr/sbin/sshd", "-D"]
    

       创建镜像

      # docker buile -f docker/dockerfile -t sshd/centos:0.1 .

      

      

      

    不积跬步,无以至千里;不积小流,无以成江海。
  • 相关阅读:
    eclipse启动时发生的Initializing Java Tooling错误
    2017最新xcode打包APP详细图文
    系统安全:安装系统时要做的优化
    逻辑卷扩容
    记一次装13行为
    网络边界安全:防火墙双机热备之上下行接交换机
    解决故障的终极绝招:重装重启之dell R620装系统
    态势感知
    怪力乱神
    远程给客户配置防火墙的反思
  • 原文地址:https://www.cnblogs.com/weidongliu/p/11226052.html
Copyright © 2011-2022 走看看