Tag: ruby在轨道

Rails 5没有Cron的常规任务

我是Rails新手,所以我不确定这是否是一个愚蠢的问题,但… 我必须运行常规任务来填充数据到我的Rails应用程序。 今天,我使用每当gem创buildCron条目在我的系统上运行这些任务。 我想将我的Rails应用程序迁移到Docker,以便更轻松地进行扩展。 我知道在Drupal(PHP)中有Poorman的Cron,它使用请求来驱动时间表。 有没有一种方法来实现在Rails内部调度,而不使用Cron或更好的方式来pipe理与Rails一起工作的常规任务?

Docker / Rails – 权限被拒绝@ dir_s_mkdir Errno :: EACCESS

有了Docker,我想build立一个可以对本地文件进行更改的环境,而容器则为这些文件提供服务。 不过,在运行docker-compose run web之后,我得到以下错误: => Booting WEBrick => Rails 5.0.0.1 application starting in development on http://0.0.0.0:3000 => Run `rails server -h` for more startup options Exiting /usr/local/lib/ruby/2.3.0/fileutils.rb:253:in `mkdir': Permission denied @ dir_s_mkdir – /usr/src/app/tmp (Errno::EACCES) from /usr/local/lib/ruby/2.3.0/fileutils.rb:253:in `fu_mkdir' from /usr/local/lib/ruby/2.3.0/fileutils.rb:227:in `block (2 levels) in mkdir_p' from /usr/local/lib/ruby/2.3.0/fileutils.rb:225:in `reverse_each' from /usr/local/lib/ruby/2.3.0/fileutils.rb:225:in `block in mkdir_p' from /usr/local/lib/ruby/2.3.0/fileutils.rb:211:in […]

使用docker部署的Rails引擎应用程序

我们有一个轨道应用程序与几个轨道引擎开发,所以它看起来像 app/ <– main app app.json Gemfile -> config/Gemfile Gemfile.lock api/ <– this is an engine app integrations/ <– this is an engine app other_engine_app/ 一切工作正常,但现在我正在寻找部署在docker上使用docker组成 我创build了一个简单的Dockerfile FROM ruby:2.3.1 RUN apt-get update -qq && apt-get install -y apt-utils build-essential nodejs ENV APP_HOME /myapp RUN mkdir -p $APP_HOME WORKDIR $APP_HOME ADD Gemfile Gemfile.lock $APP_HOME/ RUN gem […]

Sidekiq工作不是在开发模式下,只在生产中解雇

编辑:我们刚才告诉我们,docker甚至没有用于生产。 所以这个问题似乎仅限于Docker,而不是Rails正在开发的环境。 我有一个项目,我正在sidekiq工作似乎在我们的生产环境中运行良好,但在我的本地开发机器,我得到了一堆sidekiq控制台错误,我不知道为什么。 这里是我的sidekiq错误: sidekiq_1 | 2017-03-15T17:16:24.346Z 1 TID-gq075lic0 INFO: Booting Sidekiq 4.2.3 with redis options {:url=>"redis://redis:6379/"} sidekiq_1 | 2017-03-15T17:16:25.240Z 1 TID-gq075lic0 INFO: Running in ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-linux] sidekiq_1 | 2017-03-15T17:16:25.240Z 1 TID-gq075lic0 INFO: See LICENSE and the LGPL-3.0 for licensing details. sidekiq_1 | 2017-03-15T17:16:25.241Z 1 TID-gq075lic0 INFO: Upgrade to Sidekiq Pro […]

高山linux 3.5和ruby 2.0的错误?

我正在尝试使用Alpine linux 3.5来Docker化一个旧的RoR4应用程序,以在rails 4 docker镜像上构build一个ruby,但是我得到了一些与ssl相关的错误。 我已经试过Rails 4.x的多重版本,但没有任何作品。

Dockerfile – 如何运行脚本?

创build一个docker文件,但无法运行轨道设置脚本,即./bin/setup执行 我究竟做错了什么? RUN /bin/bash -C "/usr/src/app/bin/setup"不起作用。 我也试过这个RUN ./bin/setup (这也行不通!) Dockerfile FROM ruby:2.3 RUN apt-get update && apt-get install -y nodejs –no-install-recommends && rm -rf /var/lib/apt/lists/* ENV RAILS_VERSION 5 RUN gem install rails –version "$RAILS_VERSION" WORKDIR /usr/src/app COPY . . # setup does not run, why? RUN /bin/bash -C "/usr/src/app/bin/setup" …

在docker运行创build文件? 本地机器或docker图像

这是我的第一个问题在stackoverflow :))当我启动我的轨道应用程序与泊坞窗下面的链接https://docs.docker.com/compose/rails/#define-the-project 。 FROM ruby:2.3.3 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs <- this install dependencies into docker container RUN mkdir /myapp <- this create myapp folder into docker container WORKDIR /myapp ADD Gemfile /myapp/Gemfile ADD Gemfile.lock /myapp/Gemfile.lock RUN bundle install ADD . /myapp <- my confused there 如果命令“RUN bundle install”与“RUN […]

在官方Ruby映像的Docker容器上运行Rails应用程序时出错

我从docker中心拉的官方ruby图像。 由于官方的Rails镜像已经被弃用了,我觉得在Ruby容器里使用我的rails开发。 在Ruby容器里面,我做了gem install rails –version=5.1.1 。 我创build了一个rails应用程序,当我做rails s ,会抛出以下错误。 问题是什么? 我需要安装额外的依赖关系吗? 这是一个nodejs相关的问题,我认为这是不是预先安装在Ruby映像? bin/rails:3:in `load' bin/rails:3:in `<main>' Bundler Error Backtrace: from /usr/local/lib/ruby/gems/2.4.0/gems/bundler-1.14.6/lib/bundler/runtime.rb:90:in `block (2 levels) in require' : : from /home/blog/config/application.rb:7:in `<top (required)>' : : from /usr/local/bundle/gems/railties-5.1.1/lib/rails/command.rb:44:in `invoke' from /usr/local/bundle/gems/railties-5.1.1/lib/rails/commands.rb:16:in `<top (required)>' from /home/blog/bin/rails:9:in `require' from /home/blog/bin/rails:9:in `<top (required)>' from /usr/local/bundle/gems/spring-2.0.2/lib/spring/client/rails.rb:28:in `load' : : from […]

使用非默认端口在Docker容器中运行Rails应用程序

我有一个简单的rails应用程序,它有一个MongoDB后端。 我使用Docker Compose在不同的容器中运行rails应用程序和MongoDB。 当我使用默认的导轨端口(这是3000),一切运行正常。 但是,如果我使用CMD ["rails", "s", "-p", "8080"]在端口8080上运行rails应用程序,并在Dockerfile使用EXPOSE 8080将端口8080 Dockerfile ,然后重新生成并推送映像,只有MongoDB容器启动。 我还将docker-compose.yml的端口更改为8080:8080 。 如果我在端口8080( rails s -p 8080 )上运行没有Docker的rails应用程序,它工作正常。 为什么我的Rails应用程序在使用端口8080时不能在Docker容器中运行,但在使用端口3000时可以工作? Dockerfile FROM ruby:2.3.1 EXPOSE 3000 ADD . /code WORKDIR /code RUN bundle install CMD ["rails", "s"] 泊坞窗,compose.yml version: '3' services: web: image: "<USERNAME>/<REPO>:<TAG_NAME>" build: . ports: – "3000:3000" volumes: – .:/code links: – mongodb […]

Docker撰写ruby + postgres – 无法连接到postgres

我创build了Dockerfile来从官方的 docker 撰写网站的 ruby。 我用docker撰写这个与postgres整合。 当docker组成,然后postgresql启动,但我不能连接到这个。 主要的问题是在ruby数据库configuration,因为我不能改变听另一个主机,并设置默认的用户。 我不知道如何连接这两个容器,而无需更改ruby数据库configuration。 Dockerfile FROM ruby:2.3.4 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs RUN mkdir /myapp WORKDIR /myapp ADD Gemfile /myapp/Gemfile ADD Gemfile.lock /myapp/Gemfile.lock RUN bundle install ADD . /myapp 泊坞窗,撰写 version: '3' services: db: image: postgres:9.6 ports: – "5432:5432" web: build: . ports: – "4000:4000" […]