从Docker容器中添加Ruby SDK作为RubyMine上的远程SDK

Rubymine有使用Vagrant和SSH添加远程sdks的选项,但是我决定和Docker一起使用。 我已经创build了一个Ruby容器,但是我不知道如何启用SSH访问,所以Rubymine可以将它设置为远程SDK。

可能吗?

试图按照这篇文章,但ruby图像没有百胜,这个软件包epel-release是Fedora / RedHat。

嘿,你使用这个官方的Ruby泊坞窗图像 ?

如果是这样,它基于Debian,你将不得不使用apt-get来安装软件包。 下面是一个安装openssh-server并在Dockerfile中configuration用户的方便脚本:

FROM ruby:2.1.9 #====================== # Install OpenSSH server (sshd) #====================== RUN apt-get update -qqy \ && apt-get -qqy install \ openssh-server \ && echo "PidFile ${RUN_DIR}/sshd.pid" >> /etc/ssh/sshd_config \ && sed -i 's|session required pam_loginuid.so|session optional pam_loginuid.so|g' /etc/pam.d/sshd \ && mkdir -p /var/run/sshd \ && rm -rf /var/lib/apt/lists/* # Add user rubymine with password rubymine and give ownership of rubymine home dir RUN adduser --quiet rubymine \ && echo "rubymine:rubymine" | chpasswd \ && chown -R rubymine:rubymine /home/rubymine \ EXPOSE 22 

我不确定你可以使用卢西丁来确切的configuration。 但是可以用容器打开一个tty而不需要ssh:

 #run it as a daemon docker run -d --name=myruby ruby:2.19 #connect to it docker -it exec myruby /bin/bash 

更新

尝试设置DOCKER_HOST环境variables在一个TCP端口上侦听:

 export DOCKER_HOST='tcp://localhost:2376'