Я пытался заставить это приложение работать некоторое время.Это не дает мне ошибок при его создании и работает, когда мои товарищи по команде выполняют те же шаги.Но когда я запускаю
docker-compose run app bundle exec rake db:setup
, я получаю
Starting joatu-db ... done
Starting joatu-v2_bundler_1 ... done
/joatu/Gemfile not found
Я пытался связать его, используя:
docker-compose run app bundle install
, и я получаю
Starting joatu-v2_bundler_1 ... done
Starting joatu-db ... done
[!] There was an error parsing `Gemfile`: No such file or directory @ rb_sysopen - /joatu/Gemfile. Bundler cannot continue.
Я использую Windows 10 версии 1809
и запускаю ее на WSL: Ubuntu 18.04
Версия Docker: механизм докера 18.09
Версия Docker Compose: 1.24.0 rc-1
Файл Docker:
FROM ruby:2.4.5
MAINTAINER Robert JJ Smith <rsmithlal@gmail.com>
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs libssl-dev
RUN mkdir /joatu
WORKDIR /joatu
COPY Gemfile /joatu/Gemfile
COPY Gemfile.lock /joatu/Gemfile.lock
# Use a persistent volume for the gems installed by the bundler
ENV BUNDLE_GEMFILE=/joatu/Gemfile \
BUNDLE_JOBS=2 \
BUNDLE_PATH=/bundler \
GEM_PATH=/bundler \
GEM_HOME=/bundler
#RUN gem install bundler #tried with it and without it same error
RUN bundle install
COPY . /joatu
docker-compose.yml
version: '2.1'
volumes:
db-data:
services:
app:
container_name: joatu-app
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- $PWD:/joatu
volumes_from:
- bundler
ports:
- "3000:3000"
depends_on:
- db
links:
- db
env_file:
- './docker/.env.app.conf'
db:
container_name: joatu-db
volumes:
- db-data:/var/lib/postgresql/data
image: mdillon/postgis:latest
ports:
- 5432:5432
env_file:
- './docker/.env.app.conf'
bundler:
image: busybox
volumes:
- /bundler
Я изменил .
на $PWD
иеще раз, чтобы попытаться «снять маску», и она все еще не работает.
Я переместился в разные папки в окнах, чтобы увидеть, была ли это проблема с разрешениями.Это все еще не сработало.И я удалил изображение и перестроил его, чтобы убедиться, что старое изображение не перепутало изменения.
Буду признателен за любую помощь.
Исходный файл приложения находится по адресу https://github.com/joatuapp/joatu-v2
edit:
Я выполнил команду
docker-compose run app ls-la
и показало, что папка пуста,Итак, теперь я знаю, что это проблема копирования, но я все еще не знаю, как ее исправить.