屁话不多说,先来一遍正常的流程

1、下载centos镜像

# docker pull centos

2、运行容器,修改镜像

2、1 运行

# docker run -itd --name centos7 imageID /bin/bash

2、2 安装必要功能

--进入centos容器
# docker exec -it centos7 /bin/bash --没有ifconfig、ssh、vim、tree、wget等等,需要分别安装
--安装ifconfig
# yum search ifconfig
# yum install net-tools.x86_64
--安装ssh服务器
# yum list openssh
# yum install -y openssh-server
--安装ssh客户端(非必须,有需求就装)
# yum install -y openssh-clients
--安装wget
# yum install -y wget
--换源
# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# yum makecache --开启sshd服务
# systemctl start sshd
--这里会报错,坑就在这里,别急接着往下看

3、保存修改,打包发布或者备份

--退出centos容器
# exit --保存修改
# docker commit centos7 new_image_centos7:v1.
--查看是否保存成功
# docker images --保存修改后的镜像到本地文件系统
# docker save imageID > /home/centos7_update.jar --删除之前无用的容器和镜像
# docker stop centos7
# docker rm $(docker ps -aq)
# docker rmi imageID_1 imageID_2

4、重新加载备份文件到docker,并且运行

--加载镜像备份文件
# docker load < /home/xxx.jar
--这时候可以查看镜像是否加载
# docker iamges --运行镜像
# docker run -itd -p : --name centos7 imageID /bin/bash
--这也是个坑,留心

5、本地用ssh软件访问(我用SecureCRT)

然后结果就亮了:远程禁止你ssh连接

原因:猜测ssh服务没起来,进去一看果然(ps -ef | grep ssh   结果没有开启)

1、尝试开启sshd服务:

--开启服务不用service,改为systemctl了
--以前用 service sshd start
# systemctl start sshd 结果:Failed to get D-Bus connection: Operation not permitted

经过百度搜索,发现:这是兼容性问题

2、解决

--运行镜像步骤改变
# docker run -itd -p : --name centos7 imageID /usr/sbin/init
--这不用/bin/bash --进入centos7容器,开启服务就可以了
# docker exec -it centos7 /bin/bash
# systemctl start sshd
--查看是否启动
# ps -ef | grep ssh

3、结尾

--重新连接让输入用户名密码,但是有问题---》没密码
--所以在容器中要设置root密码
# passwd root
....
.... --开始连接吧

如果转载请在开头大字注明出处,谢谢

Docker创建Centos踩出来的坑的更多相关文章

  1. docker 创建容器时遇到的坑

    坑一.时区问题 在创建系统镜像时,比如centos,会默认最小安装,并且时区默认的是UTC 所以在下好centos的原始镜像后,最好再重新构建一个新的镜像 # 命令 docker pull cento ...

  2. docker 创建容器的时候的坑

    其实这个题目的话,对于我后面陈述的问题发生的本身并没有太多的联系,但是因为是在docker创建容器的操作之内发生的,所以记录以下 因为网上有些文章有些作者喜欢使用git的命令窗体,说实在的,公司里面用 ...

  3. 转:Docker创建centos的LNMP镜像

    转自:http://www.vckai.com/p/29  1. 安装docker 这个就不说了,不会的可以看下我之前的文章<Docker介绍及安装>. 1)启动docker # serv ...

  4. Docker创建centos的LNMP镜像

    前段时间重装了系统,今天刚好有时间,就用docker安装一个lnmp开发环境,下面是我的安装笔记. 1. 安装docker 这个就不说了,不会的可以看下我之前的文章<Docker介绍及安装> ...

  5. 记录一次Oracle创建DBLink踩到小坑

    1.查询当前是否具有创建DBlink的权限: select * from user_sys_privs where privilege like upper('%DATABASE LINK%'); 如 ...

  6. 创建优化的Go镜像文件以及踩过的坑

    在Docker上创建Go镜像文件并不困难,但建立的文件很大,接近1G,使用起来不太方便.Docker镜像的一个主要难题就是如何优化,创建小的镜像.我们可以用多级构建的方法来创建Docker镜像文件,它 ...

  7. docker部署redis及踩到的坑

    对docker很好奇,玩了一下,部署了一个redis,结果踩了很多坑 任务目的就是在docker中成功部署redis并保证数据持久化到本地,配置也使用本地配置 docker run -p : -v $ ...

  8. 利用docker创建支持centos的ssh镜像

    创建docker镜像需要基础镜像,目前官方已提供了多种基础镜像,参见: https://hub.docker.com/explore/ 要想创建支持centos的ssh镜像,就需要以centos镜像为 ...

  9. Docker使用Dockerfile创建Centos(tomcat+jdk)镜像

    原文链接:https://blog.csdn.net/qq_37936542/article/details/80824389 Docker构建镜像的方法主要有两种:    (1)使用docker c ...

随机推荐

  1. Linker Tools Error LNK2001

    https://msdn.microsoft.com/en-us/library/f6xx1b1z.aspx https://www.cnblogs.com/runningRain/p/5674833 ...

  2. Python-通过调用Nmap来进行端口扫描

    首先要安装python-nmap库,还要安装配置好nmap 实验机器IP:192.168.220.139 端口开放情况 代码 # -*- coding:utf-8 -*- __author__ = & ...

  3. linux日常管理-linux日志

    通过系统日志获得相关信息,出现错误,突发情况可以通过查看日志获得有用的信息.遇到故障,看日志是最常用的方法,在日常工作中一定要养成看日志的习惯. 最核心的日志在这个目录下 日志会无限生成,占用的内存会 ...

  4. zookeeper.out: Permission denied错误解决方法

    [hadoop@node1 root]$ zkServer.sh start JMX enabled by default Using config: /opt/software/zookeeper- ...

  5. java 学习众多API和手册资源下载

    这个资源包里面有jdk api 还有SSH框架的手册,数据库的手册,Jquery手册等等,还有正则表达式等, 希望可以帮助有需要的人 链接:http://希望pan.baidu.com/s/1pJ60 ...

  6. 7.21实习培训日志-JDBC JSP Servlet

    JDBC JSP Servlet 总结 今天早上的考试主要考Java的网络,HttpClient的get,post方法,Socket的文件传输和Xml和Json文件的解析,对于HttpCLient很简 ...

  7. Fetch超时设置和终止请求

    1.基本使用 Fetch 是一个新的端获取资源的接口,用于替换笨重繁琐XMLHttpRequest.它有了Request 和 Response 以及Headers对象的概念,与后端语言请求资源更接近. ...

  8. 痞子衡嵌入式:恩智浦i.MX RTxxx系列MCU特性介绍(2)- RT685EVKA性能实测(Dhrystone)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RTxxx系列MCU的性能. 在前面的文章 i.MXRTxxx微控制器概览 里,痞子衡给大家简介过恩智浦半导体在2018 ...

  9. Codeforces Round #518 (Div. 2) D(计数DP)

    #include<bits/stdc++.h>using namespace std;const long long mod=998244353;int n;int a[100007];l ...

  10. Spark Streaming 的容错

    Spark Streaming 为了实现容错特性,接收到的数据需要在集群的多个Worker 节点上的 executors 之间保存副本(默认2份).当故障发生时,有两种数据需要恢复: 1. 已接收并且 ...