Ruby on rails Windows 7上的Docker Compose:找不到文件或.bundle/目录
当我运行命令Ruby on rails Windows 7上的Docker Compose:找不到文件或.bundle/目录,ruby-on-rails,ruby,docker,docker-compose,Ruby On Rails,Ruby,Docker,Docker Compose,当我运行命令docker compose up 找不到文件或.bundle/目录 以代码10退出 下面是代码 注意:我已使用Oracle VM virtual box manager将代码的父目录作为永久共享文件夹添加到VM 有什么想法可以解决这个问题吗 Dockerfile Docker Compose 您正在容器中创建.bundle目录,然后使用主机目录将其屏蔽,因为您使用的是卷: volumes: - .:/student-api 您需要在主机上运行捆绑安装,或从撰写文件中删除卷
docker compose up
找不到文件或.bundle/目录以代码10退出 下面是代码 注意:我已使用Oracle VM virtual box manager将代码的父目录作为永久共享文件夹添加到VM 有什么想法可以解决这个问题吗 Dockerfile Docker Compose
您正在容器中创建
.bundle
目录,然后使用主机目录将其屏蔽,因为您使用的是卷:
volumes:
- .:/student-api
您需要在主机上运行
捆绑安装
,或从撰写文件中删除卷。您是否正在主路径(例如c:/Users/john/*)内装载主机目录
请注意,在主路径之外执行此操作无法正常工作。Windows上的“.”在哪里?将学生api的卷装载更改为Docker主机目录位置的完整路径,例如
/c/Users/joe/DockerRoj
,谢谢您的回答。我正在容器中创建bundle目录,以便在运行gem时缓存gem并节省时间。我使用volume,因为我计划使用docker进行本地开发。这使我在每次进行更改时不必构建图像。如果我的方法是错误的,请更正。我认为您的方法是正确的,它只会迫使您在进行开发时在主机上运行它。
db:
image: postgres
ports:
- "5432:5432"
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/student-api
ports:
- "3000:3000"
links:
- db
volumes:
- .:/student-api