-
Notifications
You must be signed in to change notification settings - Fork 1
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
Add dockerfiles and latest analysis script #8
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks Kimberly for getting this in, it looks great! A couple of small suggestions but nothing blocking
I'll open an issue to switch to using conda to install FSL
docker build -f Dockerfile -t fsl_test . | ||
``` | ||
|
||
- Create `code` and `data` directories inside the `Enigma-PD-WML` directory |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we could create an empty code
directory with a .gitkeep
file in it and commit it to this repo just so users don't need to create it themselves
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good point! Although I'm wondering if we should move away from recommending creating the code/data dirs directly inside the github repo dir anyway? As we're setting each as explicit volumes here: docker run -v "$(pwd)":/home -v "$(pwd)"/code:/code -v "$(pwd)"/data:/data fsl_test >> docker_log.txt 2>&1
, it should work with a directory in any location. This would also mean we could use the same setup instructions for pulling the image from dockerhub, where we won't have the github repo locally.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ooo that's a much better idea! Shall we leave it as is for now then and update it once the image is on dockerhub?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sounds good to me!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also (side note) - I'm not sure we need all three volumes? /home is probably sufficient by itself, as long as the code and data dirs are always nested inside?
RUN wget https://fsl.fmrib.ox.ac.uk/fsldownloads/fslconda/releases/fslinstaller.py && python fslinstaller.py -d /usr/local/fsl/ -V 6.0.7.13 | ||
|
||
RUN echo '\n # FSL Setup \nFSLDIR=/usr/local/fsl \nPATH=${FSLDIR}/share/fsl/bin:${PATH} \nexport FSLDIR PATH \n. ${FSLDIR}/etc/fslconf/fsl.sh' >> /root/.bashrc |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
not for this PR, but as you mentioned offline, let's think about using installing only conda to install only the necessary FSL packages, perhaps using miniforge as a base image
- --ignore=DL3008 | ||
- --ignore=DL3007 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah I think this makes sense here - the base image only has one tag anyway and that's latest
Co-authored-by: Paul Smith <[email protected]>
Closes #2
This adds the docker setup files + the latest analysis script
Main changes from the old setup:
t1size
is an array (otherwise causes errors ast1size[1]
etc is empty)