DEV Community

Discussion on: Dockerize the multi-services application for local development

Collapse
 
alexanderrykhlitskiy profile image
Alexander Rykhlitskiy

One more question if you don't mind. As far as I see from "- .:/app:cached", you use mac. Do your coworkers use Linux?
I'm asking because running "run" on Linux without "--user" option creates files with "root" owner. And running without this option raises error because of "- BUNDLE_PATH=/bundle". It's not allowed to write to root folder for non root users.
Do you solve it somehow? Or your entire team uses mac?

Thanks

Collapse
 
dsalahutdinov profile image
Dmitry Salahutdinov

For now, I do not have such problems, because of mac.
I think you could change BUNDLE_PATH for something less like '/app/bundle' not to be a root directory?

Do you also consider to run the docker as non-root user for linux?

Collapse
 
alexanderrykhlitskiy profile image
Alexander Rykhlitskiy • Edited

like '/app/bundle'

Yes, I do it this way now, but annoying bundle folder (though empty) gets created in app directory on host. And still no luck because bundler says / is not writable.

Do you also consider to run the docker as non-root user for linux?

You mean docker command? I run it as non-root, but there's still this issue on Linux github.com/docker/compose/issues/1...

My last set of questions :)

  1. Why do you need to set BUNDLE_PATH both in Dockerfile.dev and docker-compose.yml?
  2. When do you run bundle install? I cannot find it here gist.github.com/dsalahutdinov/2d89...

Thanks a lot for your answers!

Thread Thread
 
dsalahutdinov profile image
Dmitry Salahutdinov

Thanks for the questions, they are really make sense!

1) seems setting it in docker-compose is redundant
2) most suitable place, I think, is to leave the bundle install at bin/setup where it usually is, like here github.com/thepracticaldev/dev.to/...