我正在尝试在Docker上安装Ruby(没有Rails),但我遇到了一些问题。我最初尝试使用RVM,但我遇到了问题;在我以通常的方式安装它之后,ruby
或gem install
等命令无法识别,我理解RVM不是docker环境的最佳实践。我尝试用二进制构建,但似乎缺少这么多基本的东西,它似乎是徒劳的练习。
我现在尝试使用官方docker ruby:2.5.1
映像,但是当我附加到此时,我得到一个irb提示符,并且因为这个而无法使用操作系统命令,例如apt-get
。
我必须拥有操作系统访问权限 - 这个脚本将通过无头Watir webdriver使用浏览器,附加到Geckodriver,因此需要许多依赖项,这些依赖项不会包含在基础ruby安装中。
使用Docker处理此问题的最佳方法是什么?
这将使您进入Ruby框的命令行:
docker run -it ruby:2.5.1 bash
您现在可以正常运行ruby工具,例如ruby
,irb
,gem
。以及包括apt-get
在内的常规Debian命令。
建议:
如果你想在一个独立的环境中漫游,你应该选择像Vagrant这样的东西。
如果您打算使用docker,请尝试这种方法。 您可以将任何代码放在ruby文件中,无论您想要哪个。
$ docker run -it -v $(pwd)/:/data ruby:2.5 ruby -- /data/hello.rb
hello world!