Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LCOW: chmod permission denied in a volume #35665

Open
AlekseyMartynov opened this Issue Dec 1, 2017 · 16 comments

Comments

Projects
None yet
10 participants
@AlekseyMartynov
Copy link

AlekseyMartynov commented Dec 1, 2017

Using https://github.com/linuxkit/lcow#setup
Server Version: master-dockerproject-2017-11-30

docker run --rm -v temp1:/temp1 alpine sh -c "cd /temp1 && touch a && chmod +x a"

chmod: a: Permission denied

Real-world use case is npm i in a volume:

docker run --rm -v temp1:/temp1 node:8 sh -c "cd /temp1 && npm i leftpad"

npm ERR! path /temp1/node_modules/leftpad/package.json.2479725784
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall chmod
npm ERR! Error: EACCES: permission denied, chmod '/temp1/node_modules/leftpad/package.json.2479725784'
@los93sol

This comment has been minimized.

Copy link

los93sol commented Feb 7, 2018

Having the same issue using LCOW. Did you find a workaround? I'm also confused if this is an issue with Moby or LinuxKit....

@wtigotw

This comment has been minimized.

Copy link

wtigotw commented Feb 12, 2018

chmod is a pretty common command to run. Many of the utilities I run in containers rely on the use of it. For example, I can't run syncthing in an lcow container because both the configuration and synchronized data directories use chmod. I can live with the configuration being in the container instead of a volume, but realistically since both are stateful they should be in volumes.

The same behavior exists for named and bound volumes.

@swasheck

This comment has been minimized.

Copy link

swasheck commented Apr 4, 2018

I am also having this issue with multiple LCOW images, Splunk being the most frustrating at the moment.

@thaJeztah

This comment has been minimized.

Copy link
Member

thaJeztah commented Apr 5, 2018

@cocowalla

This comment has been minimized.

Copy link

cocowalla commented May 4, 2018

I really wonder about the usefulness of LCOW without chown and chmod - a lot of containers use these. Switching back to Linux containers, again...

@thaJeztah

This comment has been minimized.

Copy link
Member

thaJeztah commented May 7, 2018

Possibly related: #36531

LCOW is still an experimental feature, and not yet feature-complete. Unfortunately there's still many things left to implement (either in the Moby code, or in Windows).

@mtudor

This comment has been minimized.

Copy link

mtudor commented May 7, 2018

I have also switched back to Linux containers, but LCOW is very promising and I for one am very positive about what the future holds for containers on windows... @thaJeztah I also saw that issue so I'm sure you're right that it's related - I think it's probably wait and see on both issues...

@cocowalla

This comment has been minimized.

Copy link

cocowalla commented May 7, 2018

@thaJeztah yeah, maybe I'm just being impatient! It just seems that every time I try to use LCOW (I think this was my 4th time so far this year) it doesn't work. Very much looking forward to when it is working though - it will be great to ditch the Moby VM!

@Andy2244

This comment has been minimized.

Copy link

Andy2244 commented Jun 6, 2018

@cocowalla Yes, tested this a few days ago with latest windows 10 and docker 18.05, just to find the same problem with the 9p filesystem i had at the inception of LCOW a year ago, file locking does not work, so nearly every container i use wont work.

I also watched some dockercon videos specifically talking about LCOW and while they note that LCOW is "incomplete" and shares code with WSL, there was no mention on file locking, which seems to-be one of the major missing features. I also can not find any information on the possibility or timeline to fix those issues.

I guess we will have to test this every few months and hope the MS dev actually tries to get a mysql or sqlite container to work in LCOW.

@syedhassaanahmed

This comment has been minimized.

Copy link

syedhassaanahmed commented Nov 22, 2018

Same problem booting up neo4j image on latest LCOW build. Any update on this issue?

@los93sol

This comment has been minimized.

Copy link

los93sol commented Mar 18, 2019

Any updates? Using server 1809 and docker 18.09.3 with lcow and still having issues with several containers. I would have expected someone to pick this up after it's been an issue for a few years. LCOW is basically pointless at this stage until this is fixed.

@jhowardmsft

This comment has been minimized.

Copy link
Contributor

jhowardmsft commented Mar 18, 2019

@los93sol The nature of OSS is that people have their day jobs and other priorities too....

@cocowalla

This comment has been minimized.

Copy link

cocowalla commented Mar 18, 2019

@jhowardmsft some of the maintainers work at Docker Inc, so this is their day job....

I can see why there is frustration here, and TBH I don't know what the point was of releasing LCOW with a known limitation that effectively renders it useless.

@jhowardmsft

This comment has been minimized.

Copy link
Contributor

jhowardmsft commented Mar 18, 2019

Remember that LCOW is an experimental feature. In reality what you're asking for here is incredibly difficult if you think about it for a moment. You're mounting a folder on an NTFS volume on the host into a Linux host. NTFS doesn't support Unix-style permissions natively. Chmod should work though on the containers scratch space as this is native ext4.

@cocowalla

This comment has been minimized.

Copy link

cocowalla commented Mar 18, 2019

@jhowardmsft I never said it was easy 😄 My point is that it's really dissapointing that LCOW is still 'experimental' so long after release. It would be great to be able to run Linux Docker containers on Windows without the need and overhead of a Linux VM, and that's what LCOW promised but leaves unfulfilled without support for chown/chmod/chattr.

@los93sol

This comment has been minimized.

Copy link

los93sol commented Mar 18, 2019

@jhowardmsft I understand it is a technical challenge and how OSS works/operates, but let's be honest for a minute here. Microsoft has touted Docker as the way forward since Build 2016. I understand experimental and all that, but in this case you can find several issues across various GH pages where MS employees point the finger at Docker, then Docker back at MS. At some point the finger pointing has to stop and a decision about who/which repo should assume ownership of the resolution will have to occur before anyone can even begin working on a proper fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.