• CentOS下Docker镜像制作


    命令行中登录到docker hub

    命令行中输入:docker login

     
    docker login

    制作centos7.4镜像

    1、第一步:去远端拉取一个最新的centos最基础镜像,基于此镜像来制作

    docker pull centos

    2、第二步:启动该docker容器

    docker run -it centos:latest /bin/bash

    3、第三步:在启动的容器中来安装sshd

    yum -y install openssh-server
    yum -y install openssh-clients
    

    4、第四步:我们来尝试启动一下sshd服务,会发现有报错

    启动sshd服务命令: /usr/sbin/sshd -D
    报如下错误:

    Could not load host key: /etc/ssh/ssh_host_rsa_key
    Could not load host key: /etc/ssh/ssh_host_ecdsa_key
    Could not load host key: /etc/ssh/ssh_host_ed25519_key
    

    我们来解决以上错误:

    ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key -N ""
    ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key -N ""
    ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N ""
    

    此时再次来启动sshd服务应该无错误了

    5、第五步:编辑sshd_config配置文件

    执行命令:vim /etc/ssh/sshd_config
    将配置文件中原本UsePAM yes换成UsePAM no

    6、第六步:修改root的密码

    执行命令:passwd root
    输入两次密码即可

    7、第七步:我们用exit命令来退出容器

    8、第八步:基于刚退出的容器我们来制作带ssh功能的centos镜像

    docker commit bf5b84f8e2d8 docker.io/XXXXXXXXX/centos7.4_ssh

    (1)注意此处的bf5b84f8e2d8即为刚才运行的容器的id,可用docker ps -a查看

    (2)注意此处的commit格式,必须为docker.io/<你的dockerhub用户名>/centos7.4_ssh


    push镜像到远端

    docker push docker.io/XXXXXXXX/centos7.4_ssh:latest

    同样需要注意此处的push格式,必须为docker.io/<你的dockerhub用户名/完整的镜像名

    如下图所示:

     
    docker push

    同时我们去docker hub上也能看到我们刚push的镜像:

     
    Repositories

    效果验证

    为了验证镜像确实被推到远端,我们将本地刚打包好的镜像删除,然后从远端pull下来运行看看

    docker pull hansonwang/centos7.4_ssh

    可以成功pull下来:

     
    重新pull镜像

    我们来测试一下该镜像里是否包含有ssh组件:运行其并用ssh连接到容器中:
    运行容器:docker run -d -p 2222:22 docker.io/hansonwang/centos7.4_ssh:latest /usr/sbin/sshd -D
    ssh接入:ssh root@localhost -p 2222
    此时会让你输入密码,然后成功登入容器之中:

     
    ssh接入centos容器



  • 相关阅读:
    Vue项目碰到"‘webpack-dev-server’不是内部或外部命令,也不是可运行的程序或批处理文件"报错
    PowerDesigner最基础的使用方法入门学习
    Centos7 上安装mysql遇上的问题:mysql无法正常启动
    微信小程序的Web API接口设计及常见接口实现
    模型数据作渲染优化时遇到的问题
    vertex compression所遇到的问题
    depth and distance
    Linear or non-linear shadow maps?
    实施vertex compression所遇到的各种问题和解决办法
    【转】編譯Ogre1.9 IOS Dependencies及Ogre Source步驟及相關注意事項…
  • 原文地址:https://www.cnblogs.com/Python-K8S/p/13220450.html
Copyright © 2020-2023  润新知