【问题标题】:Add Ruby SDK from Docker container as a remote SDK on RubyMine从 Docker 容器添加 Ruby SDK 作为 RubyMine 上的远程 SDK
【发布时间】:2016-07-11 02:19:47
【问题描述】:

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

有可能吗?

尝试过这篇文章,但是 Ruby 镜像没有 yum 并且这个包 epel-release 是针对 Fedora/RedHat 的。

【问题讨论】:

    标签: ssh docker


    【解决方案1】:

    嘿,你在用这个official Ruby docker image吗?

    如果是这样,它是基于 Debian 的,你必须使用 apt-get 来安装软件包。 这是一个方便的脚本,用于安装 openssh-server 并在 Dockerfile 中配置用户:

    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
    

    我不确定您可以使用 Rubymine 执行哪些具体配置。但是不需要 ssh 也可以用容器打开 tty:

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

    更新

    尝试设置 DOCKER_HOST 环境变量来监听 tcp 端口:

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

    【讨论】:

    • 我用的是官方图片。 Rubymine 要求主机和端口通过 ssh 连接。尝试按照您的建议创建一个 Dockerfile,并将端口 22 在主机上公开为 2000,但是 Rubymine 说连接已被拒绝。
    • @JulianoNunesSilvaOliveira 您的主机操作系统是什么?你在使用 Docker 工具箱吗?如果是这样,您需要将 ip 设置为 Docker 工具箱创建的 boot2docker VirtualBox 机器。您可以通过使用docker-machine ls 然后docker-machine ip <listed_vm> 来发现这一点
    • 我正在使用 Docker for Windows beta 并且我正在使用 MobyLinuxVM 正在使用的 IP。此 VM 相当于使用 Virtual Box 时 Docker 的默认 VM
    • 你在Dockerfile中暴露了22端口吗?我忘了在第一个答案中添加它,然后我对其进行了编辑。
    • 是的,我将端口 22 暴露为端口 2000,它被列为开放端口。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多