2016-05-30 1 views
0

ドッカーを使用して、既存のレールプロジェクトをドッキング用のコンテナにプッシュしようとしています。web_1 | /docker-entrypoint.sh:99行目:exec:bundle:見つからないapp_web_1コード127で終了する

私はpostgresデータベースを使用しています。

私は$> docker-compose up

をしたとき、私はログにエラーを次取得。

web_1 | /docker-entrypoint.sh: line 99: exec: bundle: not found 
app_web_1 exited with code 127 

-

# Dockerfile 
FROM ruby:2.2.0 
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 gem install bundler 
RUN bundle install 
ADD . /myapp 

FROM postgres:9.4 
#FROM library/postgres 
ENV POSTGRES_USER my-user-name 
ENV POSTGRES_PASSWORD '' 
ENV POSTGRES_DB app-database-name 

-

# docker-compose.yml 
version: '2' 
services: 
    db: 
    image: postgres 
    web: 
    build: . 
    command: bundle exec rails s -p 3000 -b '0.0.0.0' 
    volumes: 
     - .:/myapp 
    ports: 
     - "3000:3000" 
    depends_on: 
     - db 
+0

は、これらの個別のDockerfilesていますか?そこに2つのFROM命令があるからです。 – johnharris85

+0

@Jハリス同じDockerFileです。私はレールとポストグルが必要です。 –

答えて

1

あなただけの上書きのpostgres enviromentsイメージにドッカ - コンを使用し、あなたのDockerfileで2つの命令を必要としません。あなたはそれを試すことができます(私はv1のバージョンを使用してください)あなたのdocker-compose.ymlで今

# Dockerfile 
FROM ruby:2.2.3 

# Update ubuntu and deps 
RUN apt-get update -qq && apt-get install -y build-essential 

# Install postgres dep 
RUN apt-get install -y libpq-dev 

# Install nokogiri dep 
RUN apt-get install -y libxml2-dev libxslt1-dev 

# Install JS runtime 
RUN apt-get install -y nodejs 

ENV APP_HOME /app 
RUN mkdir $APP_HOME 
WORKDIR $APP_HOME 

ADD Gemfile* $APP_HOME/ 
# Install api deps 
RUN bundle install --jobs 4 

ADD . $APP_HOME 

あなたはこれを試すことができます

postgres: 
    image: postgres 
environment: 
    POSTGRES_USER: my-user-name 
    POSTGRES_PASSWORD: '' 
    POSTGRES_DB: app-database-name 

web: 
    build: . 
    command: bash -c "rm -f tmp/pids/server.pid && bundle exec rails s -b '0.0.0.0'" 
    environment: 
    PORT: 3000 
    DATABASE_URL: 'postgres://postgres:@postgres:5432/postgres' 
    ports: 
    - '3000:3000' 
    link: 
    - db 
    volumes: 
    - .:/app 
関連する問題