Я получаю сообщение об ошибке: «docker: ответ об ошибке от демона: сбой создания среды выполнения OCI», когда я передаю аргумент для своего Docker образа при запуске.
Исходный код моего приложения следующий:
require "open-uri"
require "nokogiri"
crawling_url = ARGV[0]
unless crawling_url
puts "URL to crawl is empty"
exit 1
end
puts crawling_url
page = Nokogiri.HTML(open(crawling_url))
puts page.title
И Dockerfile - это:
FROM ruby:2.6
# throw errors if Gemfile has been modified since Gemfile.lock
RUN bundle config --global frozen 1
WORKDIR /usr/src/app
COPY Gemfile Gemfile.lock ./
RUN gem install bundler
RUN bundle install
COPY . .
CMD ["ruby", "/usr/src/app/crawler.rb"]
Я использую команду построения:
$ docker build -t crawler .
Когда я не даю никаких аргументов моему сценарию, это работает, но когда я даю один, это не так.
$ docker run -it crawler
URL to crawl is empty
$ docker run -it crawler "https://google.com"
docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "exec: \"https://google.com\": stat https://google.com: no such file or directory": unknown.
ERRO[0001] error waiting for container: context canceled
Что с ним не так?