我正在为现有的Ruby on Rails项目设置docker-compose。我正在使用docker-compose version 1.23.1, build b02f1306
和Docker version 18.09.0, build 4d60db4
当我尝试使用docker-compose up --build
启动我的容器进行开发时,我的Web容器和工作容器都以代码10退出。当我/ bin / bash进入它们时,/ web_gen文件夹中仅包含/ tmp / db以及其中的postgres文件。
我可以通过将卷更改为- /web_gen
来使容器正常工作,但是这些卷将不会热装。
我的docker-compose.yml
version: '3'
services:
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/web_gen
ports:
- "3000:3000"
depends_on:
- db
- redis
db:
image: 'postgres:9.4.5'
volumes:
- ./tmp/db:/var/lib/postgresql/data
redis:
image: 'bitnami/redis:latest'
environment:
- ALLOW_EMPTY_PASSWORD=yes
worker:
build: .
command: bundle exec sidekiq -c 1
volumes:
- .:/web_gen
depends_on:
- redis
Dockerfile
FROM ruby:2.3.3
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
RUN mkdir /web_gen
WORKDIR /web_gen
COPY Gemfile /web_gen/Gemfile
COPY Gemfile.lock /web_gen/Gemfile.lock
RUN bundle install
COPY . /web_gen