Tag: ssh

在容器中挂载用户SSH密钥

我正在构build一个脚本,将一些本地文件夹挂载到容器中,其中一个是用户的~/.ssh文件夹。 这样,用户仍然可以使用SSH密钥进行Git提交。 docker run -ti -v $HOME/.ssh/:$HOME/.ssh repo:tag 但是,这不会将SSH文件夹挂载到容器中。 我做错了吗?

如何创build反向ssh隧道到docker-toolbox绑定到0.0.0.0

我最近开始在Windows上使用Docker工具箱,这是一个相当困难的经历。 与在linux上运行docker相比,很多事情是不同的,因为docker实际上是在虚拟机内运行的。 我仍然无法解决的其中一个问题是如何创build反向ssh隧道到我的docker-toolbox虚拟机并将其绑定到0.0.0.0(或docker0接口) 我有docker工具箱1.10.2和运行Windows 7。 动机:我有我的Windows机器上运行的MySQL服务器,我想从我的docker集装箱连接到它。 问题:我第一次尝试直接连接到192.168.99.1(我的容器内的主机窗口框的IP地址)…但是,这是行不通的。 我认为原因是我的窗口框阻止所有的外部连接。 我不能改变Windows防火墙设置,因为这些是由域pipe理。 解决方法:我用腻子设置ssh连接到我的虚拟机(virtualbox内的boot2docker),我尝试设置反向代理: 我在putty的SSH隧道下检查“远程端口做同样的事情” 源端口我input0.0.0.0:3306 目的地我进入本地主机:3306 我检查“远程”单选button 我然后ssh boot2docker … netstat -natp | grep 3306显示了它实际绑定到127.0.0.1 我打开/ usr / local / etc / ssh / sshd_config 我设置了GatewayPorts 我用/usr/local/etc/init.d/openssh restart重新启动sshd 我断开连接…当我创build新的连接和netstat -natp | grep 3306我看到3306仍然只能绑定到127.0.0.1 在putty(和在sshd_config)相同的设置工作在我的debian框…但不是在boot2docker内。 任何想法最新怎么了? 非常感谢。

git clone无法访问docker容器中的主机

我很久以前遇到这个问题,根本解决不了。 任何人都可以给我一些帮助吗? 我创build了一个docker容器,然后在docker里面,我想克隆一个内部的git仓库: git clone git@git.xxx.net:ngcsc/ngcsc.git 我得到这个错误: ssh: connect to host git.xxx.net port 22: No route to host fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 如果我使用curl https://git.xxx.net ,我也遇到错误: curl: (7) Failed connect to git.xxx.net:443; No route to host 我可以curl其他https网站,如curl https://www.google.com 我不知道为什么一些内部网站可以在docker里面find,有些则不是。 任何build议表示赞赏

通过代理ssh错误使用Docker

当我在Linux机器上使用docker(Ubuntu 14.04)时,有几个问题。 在我的networking上有一个不允许ssh的代理。 所以我configuration了我的机器通过netcat-openbsd通过http使用ssh。 我在我的机器上configuration了我的主机gitlab,如下所示: Host gitlab User name.lastname Hostname my_gitlab.com IdentityFile ~/.ssh/my_ssh_key ProxyCommand /bin/nc -X connect -x proxy.example.net:80 %h %p IdentitiesOnly yes 当我试图从我的机器上获得回购,它完美的作品。 所以我configuration了我的docker与相同的configuration,但我得到这个错误 ssh_exchange_identification:由远程主机closures的连接 我尝试在/ etc / default / docker中configurationhttp_proxy https_proxy,但没有任何更改。 而当我使用Mac OS时,我的泊坞窗完美地使用相同的configuration。 有人知道发生了什么?

使用通用驱动程序将docker-machine连接到Azure

我有一个基于Docker的Azure部署。 我知道docker-machine有一个Azure驱动程序,可以创build虚拟机并生成证书等。但是我宁愿使用Azure工具(CLI和门户)。 所以我创build了一个VM,并在其上安装了我的公共SSH密钥。 现在我想用docker-machine连接到它。 我添加服务器,以便我可以在docker-machine ls看到它: NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default – virtualbox Stopped Unknown serv – generic Running tcp://XX.XX.XX.XX:2376 Unknown Unable to query docker version: Unable to read TLS config: open /Users/user/.docker/machine/machines/serv/server.pem: no such file or directory 当我尝试设置环境variables时,我看到: $ docker-machine env serv Error checking TLS connection: Error checking and/or regenerating […]

如何正确的graphics化ssh -X到docker集装箱?

我试图ssh进入一个正在运行的容器 ssh -X user@IP ssh -Y user@IP 我已经启动了 docker run -it image:latest /bin/bash -c 'sudo service ssh stop;sudo service ssh start;/bin/bash' 我能够SSH入容器,但我不能运行一个GUI应用程序。 当我使用echo $ DISPLAY时,我得到localhost:10.0 我已经尝试过几十种ForwardX11,X11Forwarding,ForwardX11Trusted等解决scheme 我在login时得到这个警告: Warning: No xauth data; using fake authentication data for X11 forwarding. 我读了,因为这是一个警告,可以忽略。 当试图运行一个GUI应用程序,我得到 Invalid MIT-MAGIC-COOKIE-1 keyCan't open display: localhost:10.0 我已经尝试了很多东西,但迄今为止还没有成功。 我能做什么? 谢谢。 以防万一,这是一个详细的输出: j@laptop:~/Documents/tmp/Docker/docker-system> ssh -vY moos@192.168.1.100 OpenSSH_6.6, […]

Docker SSH服务器连接被拒绝

我有我的容器下面的Dockerfile: FROM ubuntu:latest RUN apt-get upgrade RUN apt-get update RUN apt-get -y install openssh-server CMD tail -f /dev/null 但是,当我build立和运行它时,它说连接被拒绝。 我尝试了几乎所有我能find的解决scheme,包括“ufw allow”,这不能正常工作,因为它告诉我需要成为根(我怎么能为Dockerfile做这件事?)。 我需要以这种方式访问​​容器: ssh <someUsername?>@containerIP PS:我知道有其他的方式来连接到一个Docker容器,但我需要使用SSH,所以附加等是不是一个选项。 编辑:这似乎是因为sshd没有运行,因为它不显示,如果我运行“ps -A”。

CMD命令提示符下的Docker错误:运行SSH命令时发生错误

我正在使用以下教程在我的Windows机器上使用Docker安装TensorFlow: http : //www.netinstructions.com/how-to-install-and-run-tensorflow-on-a-windows-pc/ 我安装了Docker 我打开快速启动terminal 我build立了一个新的虚拟盒子“vdocker” 从快速启动terminal,我跑了 docker-machine ls和得到: NAME ACTIVE DRIVER STATE URL SWARM default * virtualbox Running tcp://192.168.99.100:2376 vdocker – virtualbox Running tcp://192.168.99.101:2376 我从Windows的“开始”菜单中打开了一个命令提示符(首先作为非pipe理员,之后以pipe理员的身份),以及当我这样做 docker-machine ls 我得到以下内容: 特别是,我被困在上面包含的教程的这一步: FOR /f "tokens=*" %i IN ('docker-machine env –shell cmd vdocker') DO %i 我不能在CMD中成功运行上面的代码。 我发现在线解决scheme,说重新生成证书,删除默认值,重新创build默认,我试了他们,没有运气。 提示将不胜感激!

在ssh shell脚本中检查docker版本

我在一个shell脚本中运行一个服务器并运行一些docker命令。 但是,在Docker 1.7版中,有些命令会失败。 我有一个1.7的修复,但如果我一直使用它,运行shell脚本需要更长的时间。 所以我想检查一下这个版本,如果它是1.7回退到较慢的脚本。 否则运行好的快速版本。 想像的东西 if ssh -l root $1 "docker -v === '1.7.*'" then echo "Docker version 1.7!" else echo "Docker version not 1.7!" fi 显然这是行不通的。 有任何想法吗?

如何在Docker中从python连接到远程Spark群集

我将Spark 2.0.0和Python 3安装在用户docker-user的容器中。 独立模式似乎正在工作。 我们在AWS和hadoop上build立了Spark群集。 随着VPN运行,从笔记本电脑我可以ssh到“内部IP”,如 ssh ubuntu@1.1.1.1 这个login。然后 cd /opt/spark/bin ./pyspark 这显示了Spark 2.0.0和Python 2.7.6。 一个天真的parallelize例子起作用。 现在在Docker支持的Jupyter Notebook中,做 from pyspark import SparkConf, SparkContext conf = SparkConf().setAppName('hello').setMaster('spark://1.1.1.1:7077').setSparkHome('/opt/spark/') sc = SparkContext(conf=conf) 这显然进入了集群,因为我可以在1.1.1.1:8080的Spark仪表板中看到应用程序“hello”。 让我感到困惑的是,它已经离开了Docker内部的这么远,不用理会ssh和密码等等。 现在尝试一个天真的parallelize例子, x = ['spark', 'rdd', 'example', 'sample', 'example'] y = sc.parallelize(x) 看起来不错。 然后, y.collect() 它挂在那里。 在仪表板“执行者摘要”表中,我不知道要找什么。 但是一个国家exited工人有这样的情况: 16/08/16 17:37:01 INFO SignalUtils: Registered signal handler […]