Tag:

数据库不会在docker中持久化

我知道我错过了这里非常基本的东西。 我已经看到了一些关于使用docker保存数据的老问题,但是我想我正在关注这里find的最新文档。 我有一个rails应用程序,我试图在docker中运行。 它运行良好,但每次我启动它,我得到ActiveRecord::NoDatabaseError 。 在创build数据库并迁移之后,应用程序运行良好,直到closures并重新启动它。 这里是我的docker文件: FROM ruby:2.3.0 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs ENV RAILS_ROOT /ourlatitude RUN mkdir -p $RAILS_ROOT/tmp/pids WORKDIR $RAILS_ROOT COPY Gemfile Gemfile COPY Gemfile.lock Gemfile.lock RUN gem install bundler RUN bundle install COPY . . 这里是我的docker-compose.yml文件 version: '2' services: db: image: postgres:9.4.5 app: build: . […]

无法运行rake db:在Docker-compose中的Dockerfile中创build

我有一个像本教程中的Dockerfile和Dockerfile docker-compose.yml ,除了我从现有的应用程序开始。 我docker-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 […]

Docker容器中的Rails应用程序不会在开发中重新加载

我遵循这个docker – 撰写教程如何启动一个rails应用程序。 它运行完美,但是当我更改控制器时,应用程序不会重新加载。 有什么可以丢失?

在Docker中使用nginx服务Rails的预编译资产

目前我正在使用docker设置我的应用程序。 我有一个最小的应用程序,1个控制器。 你可以通过运行这些来获得我的设置: rails new app –database=sqlite –skip-bundle cd app rails generate controller –skip-routes Home index echo "Rails.application.routes.draw { root 'home#index' }" > config/routes.rb echo "gem 'foreman'" >> Gemfile echo "web: rails server -b 0.0.0.0" > Procfile echo "port: 3000" > .foreman 我有以下设置: Dockerfile : FROM ruby:2.3 # Install dependencies RUN apt-get update && apt-get […]

通过docker-compose生成的文件运行web rails g控制器没有权限编辑

我正在使用docker-compose为开发人员提供环境。 docker-compose build命令运行正常,运行在0.0.0.0:3000 docker-compose up命令的0.0.0.0:3000上。 当我试图运行命令docker-compose run web rails g controller生成一个操作的控制器,比生成的文件,但没有权限在主机上编辑。 Dockerfile FROM ubuntu:14.04 FROM ruby:2.2.1 # Run updates RUN apt-get update -qq && apt-get install -y build-essential libpq-dev # Set up working directory RUN mkdir /xyz/ WORKDIR /xyz/ # Set up gems ADD Gemfile /xyz/Gemfile ADD Gemfile.lock /xyz/Gemfile.lock RUN bundle install # Finally, add […]

Docker – docker-compose'version'没有任何configuration选项

我是Docker世界的新手,我花了我的假期来学习这个docker工(然而它比Vagrant难得多)。 所以我使用Ubuntu 16.04,我成功地安装了docker和docker-compose。 我阅读本教程: 快速入门:Docker的撰写和铁路但这不工作…也许教程不好。 我有这个docker-compose.yml: db: image: postgres web: build: . command: bundle exec rails s -p 3000 -b '0.0.0.0' volumes: – .:/www/html ports: – "3000:3000" depends_on: – db 我总是得到这个错误: $ docker-compose run web rails new . –force –database=postgresql –skip-bundle ERROR: Validation failed in file './docker-compose.yml', reason(s): Unsupported config option for 'web' service: 'depends_on' […]

预编译的资产在泊坞窗图像中不存在

我正在尝试使用docker运行简单的Rails应用程序。 源自数据容器“app”的源代码。 'app'数据容器也被nginx用于服务器预编译的资产和静态文件。 但是在运行“bundle exec rake assets:precompile”之后没有find预编译的资源。 我在使用VirtualBox的Mac OS X上使用docker(Docker version 1.10.1,build 9e83765)。 泊坞窗,compose.yml version: '2' services: web: build: . command: bundle exec puma env_file: .env environment: – RACK_ENV=production – RAILS_ENV=production volumes_from: – app ports: – "3000:3000" links: – db nginx: image: nginx ports: – "80:80" volumes_from: – app volumes: – /app/public:/usr/share/nginx/html:ro – /app/config/deploy/nginx.conf:/etc/nginx/conf.d/default.conf db: […]

Docker-compose服务以–service-ports标志为默认值

tl; dr:有没有办法在编写文件中指定–service-ports标志作为默认值? 通过我的rails应用程序,我通常有一个这样的command:在我的web服务中: command: bash -c "rake db:create && rake db:migrate && rake db:seed && RAILS_ENV=development puma" 所以,用docker-compose起来,我都设置好了,但是如果我想用docker-compose run –service-ports web puma进行debugging,我必须停止我的web服务并docker-compose run –service-ports web puma 对于我的开发组合文件,我希望Web服务可以使用–service-ports标志作为默认运行。 无论如何要在撰写文件中指定这个,这样我就可以在一个命令中准备好一切了吗? (docker – 组成)