记一次为镜像添加SSH服务引发的问题

2020年1月28日下午风和日丽没有太阳,我启动了一个ubuntu容器按书上所写给他配置更新源。

发现没有vi命令,直接使用echo导入源到/etc/apt/sources.list文件中

echo "deb http://cn.archive.ubuntu.com/ubuntu/ xenial main restricted universe multiverse" > /etc/apt/sources.list
echo "deb http://cn.archive.ubuntu.com/ubuntu/ xenial-security main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb http://cn.archive.ubuntu.com/ubuntu/ xenial-updates main restricted universe multiverse" >> /etc/apt/sources.list
echo "deb http://cn.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse" >> /etc/apt/sources.list

然后把sources.list复制到/etc/apt/sources.list.d目录下,发现还是无法更新

由于无法更新包,也没有Ping命令,我就开了一个centos的容器,顺便重启了一下docker

发现docker启动失败,查看原因

直接删除/etc/docker/daemon.json,改天研究原因

然后docker启动成功

对了一下容器的DNS跟我宿主机的DNS是一致的,可以Ping通

然后重新进入ubuntu容器,成功执行

PS:我的宿主机IP是192.168.100.129,使用的NAT网络,网关跟DNS都是192.168.100.2,之前不知道为什么centos容器可以ping通宿主机的IP不能ping通192.168.100.2。容器默认分配的IP地址是172.17.x网段的,于是我就重启了宿主机,加了一块桥接网卡,使用宿主机Ping百度,发现可以解析成IP地址但是ping不通,换成手机热点就可以了,之后突然想起来工作环境连的wifi要认证,瞬间感觉自己傻逼了。

桥接不行,换回NAT,看了下其他大佬的解决方法,给宿主机加路由,重启容器,更改容器DNS,试了很多种方法,突然他自己又好了,真是奇了怪了

原文地址:https://www.cnblogs.com/tz90/p/12238544.html

时间: 2024-08-03 21:34:59

记一次为镜像添加SSH服务引发的问题的相关文章

为Docker镜像添加SSH服务

一.基于commit命令创建 1. 首先下载镜像 $ docker run -it ubuntu:16.04 /bin/bash 2. 安装SSH服务 #更新apt缓存 [email protected]:/# apt-get update [email protected]:/# apt-get install openssh-server -y 3. 配置SSH服务:如果需要正常启动SSH服务,则需手动创建/var/run/sshd目录,并启动ssh服务. 1) 创建目录 [email pr

为镜像添加ssh服务

一:基于docker commit创建 1.创建一个容器并启动 docker run -it ubuntu:14.04 /bin/bash 2,安装和配置 apt-get install openssh-server -y 如果需要正常启动ssh服务.需要吃创建/var/run/sshd  手动创建 mkdir -p /var/run/sshd /usr/sbin/sshd -D & 查看容器的端口有没有被监听 netstat -tunple 修改ssh服务.取消pam登录 sed -ri 's

Docker-为镜像添加SSH服务

进入容器的办法有很多,包括exec.attach等命令,但是这些命令都无法解决远程管理容器的问题,因此,需要SSH的支持 基于commit命令创建 docker提供了docker commit命令,支持用户提交自己对指定容器的修改,并生成新的镜像.命令格式为docker commit CONTAINER [REPOSITORY[:TAG]] Centos6开启SSH服务 启动容器 FengZhen$ docker run -it --name centos6 centos:6 /bin/bash

docker为centos镜像添加sshd服务

使用centos镜像添加sshd服务,并用xshell进行连接.1.拉取centos镜像 [[email protected] ~]# docker pull centosUsing default tag: latestlatest: Pulling from library/centosa02a4930cb5d: Pull complete Digest: sha256:184e5f35598e333bfa7de10d8fb1cebb5ee4df5bc0f970bf2b1e7c7345136

Docker 添加容器SSH服务(4)

title: Docker 添加容器SSH服务(4) date: 2018-12-15 20:26:12 tags: Docker categories: Docker copyright: true --- Docker是基于Go语言实现的开源容器项目,Docker让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何接口,Docker诞生于2013年年初,最初发起者是dotCloud公司

Docker-创建支持ssh服务的镜像

这里测试tomcat镜像安装ssh服务 1.启动镜像 [[email protected] docker]$ docker run -d tomcat:centos 844bdde121a03174f3abd226a9ef286938b6ea4a1fbd2659961b1e8542ca3ccd [[email protected] docker]$ docker exec -it 844 /bin/bash [[email protected] /]# 2.安装ssh服务 [[email pro

Docker创建支持ssh服务的容器和镜像

Dockerfile 支持系统启动 运行ssh 服务 原文链接:http://blog.csdn.net/kongxx/article/details/38395305 # 选择一个已有的os镜像作为基础 FROM centos:centos6 # 镜像的作者 MAINTAINER Fanbin Kong "[email protected]" # 安装openssh-server和sudo软件包,并且将sshd的UsePAM参数设置成no RUN yum install -y ope

Docker使用Dockerfile创建支持ssh服务自启动的容器镜像

1. 首先创建一个Dockerfile文件,文件内容如下 # 选择一个已有的os镜像作为基础 FROM centos:centos6 # 镜像的作者 MAINTAINER Fanbin Kong "[email protected]" # 安装openssh-server和sudo软件包,并且将sshd的UsePAM参数设置成no RUN yum install -y openssh-server sudo RUN sed -i 's/UsePAM yes/UsePAM no/g' /

「一」创建一个带 ssh 服务的基础镜像(修订版)--使用「docker commit」创建

在介绍如何创建带 ssh 服务的基础镜像之前,我们想回顾一下之前介绍过的内容,其中提到有三种创建镜像的常用办法: 从文件系统导入 从现有容器使用「docker commit」提交 使用 dockerfile 文件 build 本章将主要介绍后面 2 种方法. 步骤如下: $ sudo docker run -ti ubuntu:14.04 /bin/bash #首先,使用我们最熟悉的 「-ti」参数来创建一个容器. [email protected]:/# sshd bash: sshd: co