IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    在Windows Docker中,用从docker hub拉取的openeuler/openeuler镜像run起来的容器中,安装ssh的过程,真尼玛费劲,翘里哇!

    小王发表于 2024-01-21 19:56:00
    love 0
    1、拉取openeuler镜像
    选择的版本是
    openeuler/openeuler:22.03-lts-sp2
    2、run一个容器
    docker run -d -it -p 自定义SSH端口:22 --privileged --gpus all --name openEuler22 openeuler/openeuler:22.03-lts-sp2 /bin/bash
    注意:
    不支持命令结尾使用/sbin/init参数
    翘里哇!
    然而使用/bin/bash参数创建的容器中,不支持systemctl命令
    翘里哇!!
    不支持拉鸡八倒!!!
    3、进入容器
    docker exec -it openEuler22(容器名) bash
    4、安装ssh
    yum install openssh-server
    5、配置ssh
    (1)进入/etc/ssh下面,ll一下发现只有两个文件
    moduli
    sshd_config
    并没有公钥文件(你麻痹在ubuntu中安装了openssh-server之后会自动创建公钥文件)
    (2)创建公钥
    ssh-keygen -A
    再次ll一下发现创建了一组公钥文件
    ssh_host_dsa_key
    ssh_host_ecdsa_key
    ssh_host_ed25519_key
    (3)编辑sshd_config
    打开sshd_config文件,找到这一组代码
    HostKey /etc/ssh/ssh_host_rsa_key
    HostKey /etc/ssh/ssh_host_ecdsa_key
    HostKey /etc/ssh/ssh_host_ed25519_key
    把
    HostKey /etc/ssh/ssh_host_rsa_key
    注释掉,改成
    HostKey /etc/ssh/ssh_host_dsa_key
    保存退出
    6、启动ssh服务
    找找ssh的可执行文件装哪里了。
    进入目录/etc/init.d/
    啥也没有
    (ubuntu中位于/etc/init.d/下,名为ssh,执行启动命令/etc/init.d/ssh start即可启动ssh服务)
    find一下
    find / -name ssh
    没有find命令!
    你麻辣隔壁啊!翘里哇!
    安装find命令:
    yum install findutils
    再次执行find命令:
    find / -name ssh
    发现在这里:
    /usr/sbin/
    执行ssh命令:
    /usr/sbin/sshd
    执行命令:
    ps -ef|grep sshd
    看到sshd进程已经启动
    7、设置root密码
    passwd root
    没有passwd命令!
    翘里哇!
    安装passwd
    yum install passwd
    再次执行passwd root设置密码
    8、ssh登陆
    在mobaxtrem中ssh登陆



    O了!
    去你爹个懒子!!!!!!!!!


    小王 2024-01-22 03:56 发表评论


沪ICP备19023445号-2号
友情链接