我之前从未使用过docker。 我的最终目标 - 在Ruby on Rails应用程序中无头地运行chrome watir webdriver。老实说,也是RoR的新手:)
我按照一些手册对使用'watir-webdriver'和'无头'宝石的简单项目进行了对接。
https://www.packet.net/blog/how-to-run-your-rails-app-on-docker/
我的Dockerfile
FROM ruby:latest
# Mount any shared volumes from host to container @ /share
ENV HOME /home/rails/webapp
# Install dependencies
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev
WORKDIR $HOME
# Install gems
ADD Gemfile* $HOME/
RUN bundle install
ADD . $HOME
CMD ["rails", "server", "--binding", "0.0.0.0"]
我做的步骤:
rails new watir-app
watir-webdriver
,headless
及其用法添加到一个控制器。docker build -t watir-app .
(无错误)docker run -d -p 3000:3000 watir-app
(无错误)该应用无法在http://localhost:3000
上播放,因此尝试连接到容器进行调查:
C:\ Users \ ttttt \ RubymineProjects \ watir-test> docker ps -a
集装箱ID图像命令创建状态端口名称 868458c906c1 watir-app“rails server --bindi”14秒前退出(1)11秒之前adoring_volhard
C:\ Users \ ttttt \ RubymineProjects \ watir-test> docker exec adoring_volhard echo“1” 来自守护程序的错误响应:容器868458c906c13928040caf4a18d6395f6b020b3eb40a1d693de84c006b9a2617未运行
C:\用户\ TTTTT \ RubymineProjects \的Watir-试验>
Ruby:2.2.5
Rails:5.0.0.1
Docker for Win:1.12.0
答案 0 :(得分:0)
发现docker logs
命令,跟踪问题(需要在容器中安装nodejs)