简体   繁体   中英

Mongo docker with volume get error

After running docker run --name mongo -p 27017:27017 -v ~/Documents/store/mongo/:/data/db -d mongo --smallfiles

[initandlisten] exception in initAndListen: 98 Unable to create/open lock file: /data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating

In store directory, ls -l

drwxr-xr-x  4 MeoBeoI  staff  136 Dec  8 17:11 mongo
drwxr-xr-x  2 MeoBeoI  staff   68 Dec  9 10:20 redis

I use OSX 10.11.1

Looking at the mongo Dockerfile :

So try and make sure to start your container with that user:

docker run --user mongodb ...

If that is not working, then fallback to the original docker run command (which runs as root by default) and define run.sh (that needs to be copied in your own image) which will:

  • do the right chown -R mongodb:mongodb /data/db
  • call entrypoint.sh mongod

That is:

docker run ... run.sh

That would be an approach similar to issue 7198 (Make uid & gid configurable for shared volumes) .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM