cschin / Peregrine

Peregrine: Fast Genome Assembler Using SHIMMER Index
Other
99 stars 9 forks source link

Docker container's cwd is not root, slight issue with mounting #40

Closed Raesearch closed 3 years ago

Raesearch commented 3 years ago

Hello,

I apologise if this is an already known issue or specific to my OS(Windows 10 64-bit), I noticed that in the example given in the documentations you used the command:

docker run -it -v /wd:/wd --user $(id -u):$(id -g) cschin/peregrine:0.1.5.0 asm \ /wd/chm13-seqdata.lst 24 24 24 24 24 24 24 24 24 \ --with-consensus --shimmer-r 3 --best_n_ovlp 8 \ --output /wd/chm13-asm-r3-pg0.1.5.0

However when I mirrored it like so (having seqdata.lst in pwd):

docker run -it -v ${PWD}:/wd cschin/peregrine:latest asm wd/seqdata.lst\ 12 12 12 12 12 12 12 12 12 --with-consensus\ --output wd/result

It would not run properly since seqdata would be mounted in a wd/ folder in root. However the cwd is actually in /opt/test/, and so the container would not be able to find the datafiles. The correct mounting would actually be:

docker run -it -v ${PWD}:/opt/test/wd cschin/peregrine:latest asm wd/seqdata.lst\ 12 12 12 12 12 12 12 12 12 --with-consensus\ --output wd/result

Other than that, the assembler works fine, thank you for reading.

cschin commented 3 years ago

I don't have a Windows machine. Windows may use different semantics for volume path. In your description, you use relative path, wd/seqdata.lst rather than the absolute path /wd/seqdata.lst. That makes sense.