Tag:

无法find由docker组成的Gemfile错误

在docker-compose up命令中出现错误 我的Dockerfile: FROM ruby:2.3 RUN apt-get update -yqq \ && apt-get install -yqq –no-install-recommends \ postgresql-client \ nodejs \ && apt-get -q clean # Pre-install gems with native extensions RUN bundle update nokogiri RUN gem install nokogiri -v "1.6.8.1" WORKDIR /usr/src/app COPY Gemfile* . RUN bundle install COPY . . CMD script/start 我的docker-compose.yml: version: […]

Docker撰写连接问题

我尝试在docker中运行rails应用程序,但是我有一个docker-composenetworking的问题,我想… 我的Dockerfile看起来像这样: FROM ruby:2.3-slim RUN apt-get update \ && apt-get install -qq -y –no-install-recommends \ build-essential \ nodejs \ libpq-dev \ git \ tzdata \ libxml2-dev \ libxslt-dev \ ssh \ && rm -rf /var/lib/apt/lists/* ENV APP_HOME /var/apps/books-store RUN mkdir -p $APP_HOME WORKDIR $APP_HOME ENV GEM_HOME /var/apps/books-store/vendor/bundle ENV PATH $GEM_HOME/bin:$PATH ENV BUNDLE_PATH $GEM_HOME ENV BUNDLE_BIN […]

什么是部署dockerized应用程序的工具?

作为rails开发者,我使用Capistrano和Mina部署我的应用程序。 有没有像这些工具,但部署docker化的应用程序能够回滚的情况下,如果有任何错误?

Docker:rails可执行文件没有在$ PATH中find

我正在尝试为Rails创build一个docker文件,它允许容器处理所有的需求,比如Ruby版本。 我有一个Rails项目,其中只有Rails定义(5.0.0.1)的Gemfile和Gemfile.lock。 下面是我的Dockerfile和Compose文件。 除了有一个标准的方法来启动新的项目,我想要cachinggem加快发展。 为此,我觉得我需要将bundle安装到Compose文件中。 但是现在如果我尝试生成Rails应用程序,则会收到在$ PATH中找不到的错误rails可执行文件: docker-compose run web rails new . –force –database-postgresl –skip-bundle 我需要做些什么来解决这个问题? 当我正在使用现有的项目schemecachinggem时,将二进制文件添加到PATH似乎解决了这个问题,但不确定是否从头开始处理。 #ENV HOME=/usr/src/app PATH=/usr/src/app/bin:$PATH Dockerfile FROM ruby:2.3.3 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs RUN mkdir /docknewdev22C WORKDIR /docknewdev22C ADD Gemfile /docknewdev22C ADD Gemfile.lock /docknewdev22C ENV BUNDLE_PATH /gems #add the app's binaries path to […]

Docker撰写Rails

我正在试图在docker-compose.yml文件中复制这个docker命令 docker run –name rails -d -p 80:3000 -v "$PWD"/app:/www -w /www -ti rails 我的docker-compose.yml文件: rails: image: rails container_name: rails ports: – 80:3000 volumes: – ./app:/wwww 当我在做docker-compose up -d时 ,容器已经创build,但是没有开启。 当我添加tty:true到我的dockerdocker-compose.yml文件,容器启动良好,但我的卷没有安装。 我该如何复制docker -compose.yml中的docker命令?

添加狮身人面像容器docker-compose显示错误

我有一个Ruby on Rails项目,我想放入容器(有数据库,redis和web(包括rails项目)容器)。 我想添加searchfunction,所以我在撰写文件docker-compose.yml中添加了一个sphinx容器 web: dockerfile: Dockerfile-rails build: . command: bundle exec rails s -p 3000 -b '0.0.0.0' ports: – "3000:3000" links: – redis – db **- sphinx** environment: – REDISTOGO_URL=redis://user@redis:6379/ redis: image: redis **sphinx: image: centurylink/sphinx** db: dockerfile: Dockerfile-db build: . env_file: .env_db docker-compose build工作正常,但是当我运行docke-compose up我得到ERROR: Cannot start container 096410dafc86666dcf1ffd5f60ecc858760fb7a2b8f2352750f615957072d961: Cannot link to a […]

docker组成卷导致错误:容器命令未find或不存在

我最近inheritance了一个Rails项目,该项目被configuration为在开发中使用Docker运行。 这是第一次使用Docker,虽然我觉得它应该很容易,我不能得到它的工作。 当我尝试运行docker-compose时,输出是: 创buildprojectmyapp_db_1 创buildprojectmyapp_bundle_1 创buildprojectmyapp_web_1 错误:容器命令未find或不存在。 我docker-compose.yml的内容: db: build: ./docker_db web: build: . command: ./script/start volumes: – .:/myapp ports: – "3000:3000" links: – db volumes_from: – bundle bundle: image: busybox volumes: – /bundle 在debugging期间,我设法缩小到我的Web容器的卷线。 如果我注释掉- .:/myapp行,docker-compose up命令就完成了。 我可以通过docker机器的IP地址访问站点,但是对于要反映的站点的更改,我必须完全重build容器,我假设是将当前目录安装为卷的目的。 我的主要应用程序中的Dockerfile的内容: FROM ruby:2.2.2 RUN apt-get update -qq && apt-get install -y build-essential locales libpq-dev nodejs git […]

如何在docker-compose中configurationMySQL容器后台运行

我已经创build了下面docker-compose.yml文件来创build一个基于Ruby映像的容器和一个基于MySQL映像的容器。 当我执行docker-compose up ,MySQL容器似乎被正确创build,但是它不在后台运行。 我怎样才能使用docker-compose.yml文件来configuration它呢? version: '2' services: web: build: context: . dockerfile: .docker/rails.dockerfile volumes: – .:/var/www ports: – "3000:3000" depends_on: – 'mysql' networks: – ddoc-network mysql: image: mysql environment: MYSQL_ROOT_PASSWORD: 'SOMETHING' networks: – ddoc-network networks: ddoc-network: driver: bridge rails.dockerfile FROM ruby:2.3.1 MAINTAINER Juliano Nunes RUN apt-get update -qq && apt-get install -y build-essential mysql-client […]

docker可执行文件没有在$ PATH中find

试图在正在运行的docker compose容器上运行rails迁移会引发这个错误: $ docker-compose run webapp rails db:migrate 错误:无法启动服务webapp:无效的头字段值“oci运行时错误:container_linux.go:247:启动容器进程导致\”exec:\\“rails \\”:可执行文件找不到$ PATH \“\ n” 但是,我可以从容器内部访问导轨: $ docker-compose run webapp bash root@3fd3a87275a1:/home/app/webapp# which rails /usr/local/rvm/gems/ruby-2.3.1/bin/rails 我的容器已经运行,我可以获取页面: $ curl http://localhost -i HTTP/1.1 200 OK Content-Type: text/html; charset=utf-8 Transfer-Encoding: chunked Connection: keep-alive Status: 200 OK Cache-Control: max-age=0, private, must-revalidate ETag: W/"b62d4f67b7b823c017534cd9727752cd" X-Frame-Options: SAMEORIGIN X-XSS-Protection: 1; mode=block X-Content-Type-Options: nosniff X-Runtime: […]

Dockerfile是否创build一个单一的图像或多个图像?

我的dock-compose.yml文件 db: image: postgres ports: – "5432" web: build: . command: bundle exec rails s -p 3000 -b '0.0.0.0' volumes: – .:/myapp ports: – "3030:3030" links: – db 我的Dockerfile FROM ruby:2.1.4 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs RUN mkdir /myapp WORKDIR /myapp ADD Gemfile /myapp/Gemfile RUN bundle install ADD . […]