External Email - Use Caution
Hi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQR... to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0 \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD... \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to *how the container is executed by the SDK or entrypoint*, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks!
Hi Oscar,
My guess is the FREESURFER_HOME environment variable is being cleared by the SDK. FreeSurfer will by default look for the license file at $FREESURFER_HOME/license.txt.
There is also the environment variable FS_LICENSE which can tell freesurfer where the license file is, but since in your case the file is in the standard location, I'm guessing that is not being used.
So setting FREESURFER_HOME=/usr/local/freesurfer
or FS_LICENSE=/usr/local/freesurfer/license.txt
should work.
-Paul
________________________________________ From: Óscar Peña-Nogales opennog@gmail.com Sent: Wednesday, October 8, 2025 5:04 AM To: Freesurfer support list Subject: [Freesurfer] recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://surfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQRG9rdbkiIwrMAAX_nB5vbgB1SinG3-ZgBHMj5v1kXw9Kzv2wjW822yvRSfacJPLxUclBW_SVfJmKMsRZJUYpRlyHv2tHipdp2sGkfU_uvsWOgij6a3Af0GFnxxy-lh717ouUQHFkQdxjpHzUyK8MdoIyl3TUT7JnwDVxDoS5a3YHcLkk3k9qOctUUpb3xhz22OxgPO5rn-Dyva9oEBOcajMvvJJ4C0-P1zH5ObSHsHQPDs46JbKWyOyBJb9waFQxxvzMy1_5J_Y3Qf2w2F5Iwy4jqW_0imkQOzvVAbCQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0http://secure-web.cisco.com/1mwCEJkYKnfdfA22FPsDgHeg-XoCzA3_JkIyAVUiiiBYW-fxkpXwzJWcNA8mMiVFPMO_i08dRg5P8z2TJHyAgLNDI1bsYea4B8_tGf6AdM32EJixbXGcbGSeU45sh_WdYxn9IxNgQuEsRP8bD8e3C8dT7E3RUqyiBmH669XuUk3tkPdNXBnjryIfiipNNwL0ngSj-W0uPCKNe0yoJZ7Fcbuw2HXT3fMXAnlRjFePwpEtWquqGaPBD90e2d7LPU_qVJWtCRDGXAIQO-qVPgbzfkC9yNWEeXAgOeddwdgNHfErpiUIvw1rRxogfxBPUCF0FWYIsfzklPzKELpkzdqxMbw/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0 \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://xxxxx.com/https://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD2Lt1Q4r73hfoxAjuZKYF9WuMsDeJHZjd_EegU9PPSWTRd_-snZtEdbl-L6SrLp8leodWB8PW8uIx_2TgeZ_GzwXKw5tvLFZrlW4lfOyr-KMho7jyCobO0U0VKbcTHZU5_pQO6_l0PvazBy2vN5XI8rLwL-orl0PRuSn_hkxRUaWodXDQ9d8laPt802auFpG0h2Tqz-OvDpcRy4lOB7613atQgzO3Ud4rgjY7IkDwJnyeNCO9R9u_xT_9p9SqwzZqnhTkZl6WXtWCR-N4Y3I5Um1eIpEOuERQNut2spww/https%3A%2F%2Fxxxxx.com%2F \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to how the container is executed by the SDK or entrypoint, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks!
External Email - Use Caution
Hello,
Thanks for your inputs, however, when inspecting the container environment in runtime I can see that the variables are properly set: 'FREESURFER_HOME': '/usr/local/freesurfer', 'FS_LICENSE': '/usr/local/freesurfer/license.txt', 'FREESURFER_SETUP': '/usr/local/freesurfer/SetUpFreeSurfer.sh', 'MINC_BIN_DIR': '/usr/local/freesurfer/mni/bin',
But I get this error when running right after the command recon-all
-------------------------------------------------------------------------- ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0Igq... to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment. --------------------------------------------------------------------------
Then I don't think the SDK is modifying the environment, also the license.txt is found in the default location. I can even read it and print it at runtime. This is only happening for FreeSurfer 5.3.0 but not for later FreeSurfer versions (which are built using the same steps).
Any other suggestions?
Óscar
On Thu, 9 Oct 2025 at 14:33, Wighton, Paul PWIGHTON@mgh.harvard.edu wrote:
Hi Oscar,
My guess is the FREESURFER_HOME environment variable is being cleared by the SDK. FreeSurfer will by default look for the license file at $FREESURFER_HOME/license.txt.
There is also the environment variable FS_LICENSE which can tell freesurfer where the license file is, but since in your case the file is in the standard location, I'm guessing that is not being used.
So setting FREESURFER_HOME=/usr/local/freesurfer
or FS_LICENSE=/usr/local/freesurfer/license.txt
should work.
-Paul
From: Óscar Peña-Nogales opennog@gmail.com Sent: Wednesday, October 8, 2025 5:04 AM To: Freesurfer support list Subject: [Freesurfer] recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use CautionHi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0Igq...< http://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQR... to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0< http://secure-web.cisco.com/1mwCEJkYKnfdfA22FPsDgHeg-XoCzA3_JkIyAVUiiiBYW-fx... \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://secure-web.cisco.com/1dwNyPHyZdF74N8CBbePYmDs_N5_8E-GU4rmVapLMhkXkNS...< https://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD... \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to how the container is executed by the SDK or entrypoint, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks! _______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edu
https://secure-web.cisco.com/1azVNbHYfrpkN0ViChl6dOJcXJLtuSXYazp3wjXvAQIekhx... The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2... < https://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2... .
Ah! FreeSurfer 5.3.0 is the reason. I think the license file format has changed at some point. I'm not sure how to get a 5.3.0 license file. Perhaps someone else on the list knows?
-Paul
________________________________________ From: Óscar Peña-Nogales opennog@gmail.com Sent: Friday, October 10, 2025 10:42 AM To: Freesurfer support list Subject: [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hello,
Thanks for your inputs, however, when inspecting the container environment in runtime I can see that the variables are properly set: 'FREESURFER_HOME': '/usr/local/freesurfer', 'FS_LICENSE': '/usr/local/freesurfer/license.txt', 'FREESURFER_SETUP': '/usr/local/freesurfer/SetUpFreeSurfer.sh', 'MINC_BIN_DIR': '/usr/local/freesurfer/mni/bin',
But I get this error when running right after the command recon-all
-------------------------------------------------------------------------- ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://surfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment. --------------------------------------------------------------------------
Then I don't think the SDK is modifying the environment, also the license.txt is found in the default location. I can even read it and print it at runtime. This is only happening for FreeSurfer 5.3.0 but not for later FreeSurfer versions (which are built using the same steps).
Any other suggestions?
Óscar
On Thu, 9 Oct 2025 at 14:33, Wighton, Paul <PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu> wrote: Hi Oscar,
My guess is the FREESURFER_HOME environment variable is being cleared by the SDK. FreeSurfer will by default look for the license file at $FREESURFER_HOME/license.txt.
There is also the environment variable FS_LICENSE which can tell freesurfer where the license file is, but since in your case the file is in the standard location, I'm guessing that is not being used.
So setting FREESURFER_HOME=/usr/local/freesurfer
or FS_LICENSE=/usr/local/freesurfer/license.txt
should work.
-Paul
________________________________________ From: Óscar Peña-Nogales <opennog@gmail.commailto:opennog@gmail.com> Sent: Wednesday, October 8, 2025 5:04 AM To: Freesurfer support list Subject: [Freesurfer] recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://surfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQRG9rdbkiIwrMAAX_nB5vbgB1SinG3-ZgBHMj5v1kXw9Kzv2wjW822yvRSfacJPLxUclBW_SVfJmKMsRZJUYpRlyHv2tHipdp2sGkfU_uvsWOgij6a3Af0GFnxxy-lh717ouUQHFkQdxjpHzUyK8MdoIyl3TUT7JnwDVxDoS5a3YHcLkk3k9qOctUUpb3xhz22OxgPO5rn-Dyva9oEBOcajMvvJJ4C0-P1zH5ObSHsHQPDs46JbKWyOyBJb9waFQxxvzMy1_5J_Y3Qf2w2F5Iwy4jqW_0imkQOzvVAbCQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0http://secure-web.cisco.com/10bra9HdhlTj-ut3zc8LkwW4v3HqCNE8wUuAPOxTCAvs-W1p5grvzxThkrG5888fg9txOOvbsWIeO118FIB4tJNtU82IWP3Tw9MfX8A_2hOIBofMORtaRHjIRA76ZhdWDhsAMdufHkbhc41hb2bs5lROt5vdJ3VS2R0eov10hPtJUgqlS36SrvCqsqgMkTHGLfD8X-DYr845SVRUbkjOC3vnOlYzjXJcJZb-UlEDcJ0a_nRqN0oKXpEBaVwjCgRQXE0TK5Lux56YLpjl-JdPZtMQ5U-eo3Xm-iN4UoKGkVNr-xKTA01k0g9b5Ju_S79NG/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0http://secure-web.cisco.com/1mwCEJkYKnfdfA22FPsDgHeg-XoCzA3_JkIyAVUiiiBYW-fxkpXwzJWcNA8mMiVFPMO_i08dRg5P8z2TJHyAgLNDI1bsYea4B8_tGf6AdM32EJixbXGcbGSeU45sh_WdYxn9IxNgQuEsRP8bD8e3C8dT7E3RUqyiBmH669XuUk3tkPdNXBnjryIfiipNNwL0ngSj-W0uPCKNe0yoJZ7Fcbuw2HXT3fMXAnlRjFePwpEtWquqGaPBD90e2d7LPU_qVJWtCRDGXAIQO-qVPgbzfkC9yNWEeXAgOeddwdgNHfErpiUIvw1rRxogfxBPUCF0FWYIsfzklPzKELpkzdqxMbw/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0 \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://xxxxx.com/https://secure-web.cisco.com/1dwNyPHyZdF74N8CBbePYmDs_N5_8E-GU4rmVapLMhkXkNSf7f6pcnvxYQSKptKiCTyzoyGBG0gS6JD6rR9HqSzCYiBGf-cCCit7BG2iclr4tX-vIB920riAckJmrhacfFdB3PQ29DNXZ2gQ4Kts3gRejqTgCZd4QG-BHlAPuZgRSpPATVrAizqas2mf88nEmFAk1VHfYkmTgUxICNCjOn5sRwIhvBJF23ToXf3WukOJoJw-BtlueshU_reGsQ7QcFp0I4ycQRdluhZe_7k_0Wb_XJlVHezuxM1t4T8WaNIKQNQ6oGNLZhbu3ej_dW_b-/https%3A%2F%2Fxxxxx.com%2Fhttps://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD2Lt1Q4r73hfoxAjuZKYF9WuMsDeJHZjd_EegU9PPSWTRd_-snZtEdbl-L6SrLp8leodWB8PW8uIx_2TgeZ_GzwXKw5tvLFZrlW4lfOyr-KMho7jyCobO0U0VKbcTHZU5_pQO6_l0PvazBy2vN5XI8rLwL-orl0PRuSn_hkxRUaWodXDQ9d8laPt802auFpG0h2Tqz-OvDpcRy4lOB7613atQgzO3Ud4rgjY7IkDwJnyeNCO9R9u_xT_9p9SqwzZqnhTkZl6WXtWCR-N4Y3I5Um1eIpEOuERQNut2spww/https%3A%2F%2Fxxxxx.com%2F \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to how the container is executed by the SDK or entrypoint, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks! _______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman3/lists/freesurfer@nmr.mgh.harvard.e...https://secure-web.cisco.com/1azVNbHYfrpkN0ViChl6dOJcXJLtuSXYazp3wjXvAQIekhxhdi4fSKjDQlYfk5oF1Oi8fN7JeXZMC7Teol66gLKf2KL9qSYKzYP_ouWXDKmC4a8Du_kgeeXTwh-GEpnyyffHT4jjrRt_hOMkpM74lbVs8yENnOdlp8yAsiBvnjYCzfO73OQP1UMT8sYXCjeN1V-9pAkmGuruztnStFmxUT2-XTZQraJ-4aT45zNHnEx825h7YUrX2HP_jFmJQPkICuJOvSmq8_4kvRAYtadhvJ8tcEgPJdWlcq-YDyF23qdGoyZQkzuGpi1k2V79il616/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2F The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://www.massgeneralbrigham.org/compliancelinehttps://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline <https://www.massgeneralbrigham.org/compliancelinehttps://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline> .
External Email - Use Caution
Hi Paul and all!
Hmm, I am not sure that's the case. As I indicated in my first message, if I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. Sadly, there is no official freesurfer Docker image for version 5.3.0, and we cannot use newer versions because we would lose consistency on the already processed data. I guess it is not going to be deployed in the future, right?
Thanks!
On Fri, 10 Oct 2025 at 16:11, Wighton, Paul PWIGHTON@mgh.harvard.edu wrote:
Ah! FreeSurfer 5.3.0 is the reason. I think the license file format has changed at some point. I'm not sure how to get a 5.3.0 license file. Perhaps someone else on the list knows?
-Paul
From: Óscar Peña-Nogales opennog@gmail.com Sent: Friday, October 10, 2025 10:42 AM To: Freesurfer support list Subject: [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use CautionHello,
Thanks for your inputs, however, when inspecting the container environment in runtime I can see that the variables are properly set: 'FREESURFER_HOME': '/usr/local/freesurfer', 'FS_LICENSE': '/usr/local/freesurfer/license.txt', 'FREESURFER_SETUP': '/usr/local/freesurfer/SetUpFreeSurfer.sh', 'MINC_BIN_DIR': '/usr/local/freesurfer/mni/bin',
But I get this error when running right after the command recon-all
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcot...< http://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0Igq... to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
Then I don't think the SDK is modifying the environment, also the license.txt is found in the default location. I can even read it and print it at runtime. This is only happening for FreeSurfer 5.3.0 but not for later FreeSurfer versions (which are built using the same steps).
Any other suggestions?
Óscar
On Thu, 9 Oct 2025 at 14:33, Wighton, Paul <PWIGHTON@mgh.harvard.edu mailto:PWIGHTON@mgh.harvard.edu> wrote: Hi Oscar,
My guess is the FREESURFER_HOME environment variable is being cleared by the SDK. FreeSurfer will by default look for the license file at $FREESURFER_HOME/license.txt.
There is also the environment variable FS_LICENSE which can tell freesurfer where the license file is, but since in your case the file is in the standard location, I'm guessing that is not being used.
So setting FREESURFER_HOME=/usr/local/freesurfer
or FS_LICENSE=/usr/local/freesurfer/license.txt
should work.
-Paul
From: Óscar Peña-Nogales <opennog@gmail.commailto:opennog@gmail.com> Sent: Wednesday, October 8, 2025 5:04 AM To: Freesurfer support list Subject: [Freesurfer] recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use CautionHi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcot...< http://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0Igq...
<
http://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQR... to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0< http://secure-web.cisco.com/10bra9HdhlTj-ut3zc8LkwW4v3HqCNE8wUuAPOxTCAvs-W1p...
<
http://secure-web.cisco.com/1mwCEJkYKnfdfA22FPsDgHeg-XoCzA3_JkIyAVUiiiBYW-fx... \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://secure-web.cisco.com/1MWqwclSfbztHV6VxKjkHudNfmLaIwU08A1T9wXkRa9wcNt...< https://secure-web.cisco.com/1dwNyPHyZdF74N8CBbePYmDs_N5_8E-GU4rmVapLMhkXkNS...
<
https://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD... \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to how the container is executed by the SDK or entrypoint, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks! _______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edumailto: freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edu mailto:freesurfer-leave@nmr.mgh.harvard.edu
https://secure-web.cisco.com/13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pf... < https://secure-web.cisco.com/1azVNbHYfrpkN0ViChl6dOJcXJLtuSXYazp3wjXvAQIekhx...
The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9f...< https://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2... <https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9f...< https://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2... .
Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edu
https://secure-web.cisco.com/13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pf... The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9f... < https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9f... .
Hmm this is really odd. Are you able to generate a list of environment variables that are changing? PATH or LD_LIBRARY_PATH perhaps?
-Paul
________________________________________ From: Óscar Peña-Nogales opennog@gmail.com Sent: Monday, October 13, 2025 4:30 AM To: Freesurfer support list Subject: [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hi Paul and all!
Hmm, I am not sure that's the case. As I indicated in my first message, if I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. Sadly, there is no official freesurfer Docker image for version 5.3.0, and we cannot use newer versions because we would lose consistency on the already processed data. I guess it is not going to be deployed in the future, right?
Thanks!
On Fri, 10 Oct 2025 at 16:11, Wighton, Paul <PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu> wrote: Ah! FreeSurfer 5.3.0 is the reason. I think the license file format has changed at some point. I'm not sure how to get a 5.3.0 license file. Perhaps someone else on the list knows?
-Paul
________________________________________ From: Óscar Peña-Nogales <opennog@gmail.commailto:opennog@gmail.com> Sent: Friday, October 10, 2025 10:42 AM To: Freesurfer support list Subject: [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hello,
Thanks for your inputs, however, when inspecting the container environment in runtime I can see that the variables are properly set: 'FREESURFER_HOME': '/usr/local/freesurfer', 'FS_LICENSE': '/usr/local/freesurfer/license.txt', 'FREESURFER_SETUP': '/usr/local/freesurfer/SetUpFreeSurfer.sh', 'MINC_BIN_DIR': '/usr/local/freesurfer/mni/bin',
But I get this error when running right after the command recon-all
-------------------------------------------------------------------------- ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://surfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcotsw_l_JhT6CwIRnDBy3NuDwGhvZQSUxAUmWnQQWGF40iF4DjXyPY4CbCPnzf2_7YduA9uHNkLOb0TbWJGOX3-oZDBA1EXfBWiXCsgG2KftGopb1vDDt0OSs0n6oDrs3_kBvtikG65kIDk_ncZYQ3GtOB0j5GoC1bQ4kWGhcSKiQ1LspuBqNn4qNUi1pbvsS3oTaFbWSq4GgMZLui3yp6saepEHILiMKWnI-36nw9uA7iWpYy5s-PTmgbNuXfc9VnauMiDvVH5i_E_ojyAGjOvUmlae2AbVtpxNz5j5BQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment. --------------------------------------------------------------------------
Then I don't think the SDK is modifying the environment, also the license.txt is found in the default location. I can even read it and print it at runtime. This is only happening for FreeSurfer 5.3.0 but not for later FreeSurfer versions (which are built using the same steps).
Any other suggestions?
Óscar
On Thu, 9 Oct 2025 at 14:33, Wighton, Paul <PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu<mailto:PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu>> wrote: Hi Oscar,
My guess is the FREESURFER_HOME environment variable is being cleared by the SDK. FreeSurfer will by default look for the license file at $FREESURFER_HOME/license.txt.
There is also the environment variable FS_LICENSE which can tell freesurfer where the license file is, but since in your case the file is in the standard location, I'm guessing that is not being used.
So setting FREESURFER_HOME=/usr/local/freesurfer
or FS_LICENSE=/usr/local/freesurfer/license.txt
should work.
-Paul
________________________________________ From: Óscar Peña-Nogales <opennog@gmail.commailto:opennog@gmail.com<mailto:opennog@gmail.commailto:opennog@gmail.com>> Sent: Wednesday, October 8, 2025 5:04 AM To: Freesurfer support list Subject: [Freesurfer] recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://surfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcotsw_l_JhT6CwIRnDBy3NuDwGhvZQSUxAUmWnQQWGF40iF4DjXyPY4CbCPnzf2_7YduA9uHNkLOb0TbWJGOX3-oZDBA1EXfBWiXCsgG2KftGopb1vDDt0OSs0n6oDrs3_kBvtikG65kIDk_ncZYQ3GtOB0j5GoC1bQ4kWGhcSKiQ1LspuBqNn4qNUi1pbvsS3oTaFbWSq4GgMZLui3yp6saepEHILiMKWnI-36nw9uA7iWpYy5s-PTmgbNuXfc9VnauMiDvVH5i_E_ojyAGjOvUmlae2AbVtpxNz5j5BQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQRG9rdbkiIwrMAAX_nB5vbgB1SinG3-ZgBHMj5v1kXw9Kzv2wjW822yvRSfacJPLxUclBW_SVfJmKMsRZJUYpRlyHv2tHipdp2sGkfU_uvsWOgij6a3Af0GFnxxy-lh717ouUQHFkQdxjpHzUyK8MdoIyl3TUT7JnwDVxDoS5a3YHcLkk3k9qOctUUpb3xhz22OxgPO5rn-Dyva9oEBOcajMvvJJ4C0-P1zH5ObSHsHQPDs46JbKWyOyBJb9waFQxxvzMy1_5J_Y3Qf2w2F5Iwy4jqW_0imkQOzvVAbCQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0http://secure-web.cisco.com/1INXLcagbw9wIyfnTADeTLh0To-lszEo0YVx9I46hukyLx9tDTZzMJvMCeYrQGVjb_OWX_caJfxPKdLBuXsT-u2TI2spDCAtGHqcWR2mOI_GitmQyUSqI3RYs9bxz75e0QuREwuLQHr3p07sFQkpELqxQj8QjEnmVVGXcAyEQ63g1uK8bsijRnt71SHbcQ0AZpC_3Cjctpw8-9TsZePJqdSUUq5SF8_Z2PjWoAL6z7wmuG2iwaTx1lJT9aFYISQasRn3ZHMgO49_R-x6Q0G_TNkrsLV8BF3RE0gmGScdcxNxpz2b0-RWW5VfuxI043t4hnI0dPhK-cDHeiFsmHz8cBA/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0http://secure-web.cisco.com/10bra9HdhlTj-ut3zc8LkwW4v3HqCNE8wUuAPOxTCAvs-W1p5grvzxThkrG5888fg9txOOvbsWIeO118FIB4tJNtU82IWP3Tw9MfX8A_2hOIBofMORtaRHjIRA76ZhdWDhsAMdufHkbhc41hb2bs5lROt5vdJ3VS2R0eov10hPtJUgqlS36SrvCqsqgMkTHGLfD8X-DYr845SVRUbkjOC3vnOlYzjXJcJZb-UlEDcJ0a_nRqN0oKXpEBaVwjCgRQXE0TK5Lux56YLpjl-JdPZtMQ5U-eo3Xm-iN4UoKGkVNr-xKTA01k0g9b5Ju_S79NG/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0http://secure-web.cisco.com/1mwCEJkYKnfdfA22FPsDgHeg-XoCzA3_JkIyAVUiiiBYW-fxkpXwzJWcNA8mMiVFPMO_i08dRg5P8z2TJHyAgLNDI1bsYea4B8_tGf6AdM32EJixbXGcbGSeU45sh_WdYxn9IxNgQuEsRP8bD8e3C8dT7E3RUqyiBmH669XuUk3tkPdNXBnjryIfiipNNwL0ngSj-W0uPCKNe0yoJZ7Fcbuw2HXT3fMXAnlRjFePwpEtWquqGaPBD90e2d7LPU_qVJWtCRDGXAIQO-qVPgbzfkC9yNWEeXAgOeddwdgNHfErpiUIvw1rRxogfxBPUCF0FWYIsfzklPzKELpkzdqxMbw/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0 \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://xxxxx.com/https://secure-web.cisco.com/1MWqwclSfbztHV6VxKjkHudNfmLaIwU08A1T9wXkRa9wcNtVt1LqSc3mYZEzAx6efVbrXNzDJFK31yHCrf_BD7oPyetTLlnJqxzAqamNliU77VSIj6b7xEDexwxes7dV37yRgFoRFuKI3QT8djy8lKyEqogbkxaO4uyhfw6Il13yAN4thl4t2IKUmnweoSo-9fIWiIaIRTIBOV3ccBRzC0Xb7-2XL5Ytk_5hoph1n0_S9O5ABakDL4dT0pTNU9HZ4nuRJeI3roWhvmtQWl3a109dEhfzdDgHPhQCq4FyIIa4U3FUcnRR183Xpbyz7srtp7HnFKTx--JQIpxLSWhi7cw/https%3A%2F%2Fxxxxx.com%2Fhttps://secure-web.cisco.com/1dwNyPHyZdF74N8CBbePYmDs_N5_8E-GU4rmVapLMhkXkNSf7f6pcnvxYQSKptKiCTyzoyGBG0gS6JD6rR9HqSzCYiBGf-cCCit7BG2iclr4tX-vIB920riAckJmrhacfFdB3PQ29DNXZ2gQ4Kts3gRejqTgCZd4QG-BHlAPuZgRSpPATVrAizqas2mf88nEmFAk1VHfYkmTgUxICNCjOn5sRwIhvBJF23ToXf3WukOJoJw-BtlueshU_reGsQ7QcFp0I4ycQRdluhZe_7k_0Wb_XJlVHezuxM1t4T8WaNIKQNQ6oGNLZhbu3ej_dW_b-/https%3A%2F%2Fxxxxx.com%2Fhttps://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD2Lt1Q4r73hfoxAjuZKYF9WuMsDeJHZjd_EegU9PPSWTRd_-snZtEdbl-L6SrLp8leodWB8PW8uIx_2TgeZ_GzwXKw5tvLFZrlW4lfOyr-KMho7jyCobO0U0VKbcTHZU5_pQO6_l0PvazBy2vN5XI8rLwL-orl0PRuSn_hkxRUaWodXDQ9d8laPt802auFpG0h2Tqz-OvDpcRy4lOB7613atQgzO3Ud4rgjY7IkDwJnyeNCO9R9u_xT_9p9SqwzZqnhTkZl6WXtWCR-N4Y3I5Um1eIpEOuERQNut2spww/https%3A%2F%2Fxxxxx.com%2F \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to how the container is executed by the SDK or entrypoint, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks! _______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu<mailto:freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu> To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu<mailto:freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu> https://mail.nmr.mgh.harvard.edu/mailman3/lists/freesurfer@nmr.mgh.harvard.e...https://secure-web.cisco.com/13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pfzWmPeAwjiUQNTcNLIZa2-M1LGjxUPgK0xezPlbBMVQRY28C8byARaMyDKT7R6x6yk9D5QEJ0P15a7Ha8FumjwRxJ3LdRb49mmvc1bt20zT5ke7UCZEpJIf3NFImmkr-6rfAqp4Zrel5GzMSxfNBBJkb1sNaLaQdDMb6vUqABL8GYzbL1K2E3OUlVvPRCrPB_DOBUlmIovzPKMqhOleMbYn7B-DJaF8HGLyGFYN4jXviTnMo5c0LWHSdXV3RG7BtJhuQMNHDMqretMg8luDeRHaL0UJ6P1VvdDhlCLlHQ/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2Fhttps://secure-web.cisco.com/1azVNbHYfrpkN0ViChl6dOJcXJLtuSXYazp3wjXvAQIekhxhdi4fSKjDQlYfk5oF1Oi8fN7JeXZMC7Teol66gLKf2KL9qSYKzYP_ouWXDKmC4a8Du_kgeeXTwh-GEpnyyffHT4jjrRt_hOMkpM74lbVs8yENnOdlp8yAsiBvnjYCzfO73OQP1UMT8sYXCjeN1V-9pAkmGuruztnStFmxUT2-XTZQraJ-4aT45zNHnEx825h7YUrX2HP_jFmJQPkICuJOvSmq8_4kvRAYtadhvJ8tcEgPJdWlcq-YDyF23qdGoyZQkzuGpi1k2V79il616/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2F The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://www.massgeneralbrigham.org/compliancelinehttps://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcompliancelinehttps://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline <https://www.massgeneralbrigham.org/compliancelinehttps://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcompliancelinehttps://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline> .
_______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu https://mail.nmr.mgh.harvard.edu/mailman3/lists/freesurfer@nmr.mgh.harvard.e...https://secure-web.cisco.com/13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pfzWmPeAwjiUQNTcNLIZa2-M1LGjxUPgK0xezPlbBMVQRY28C8byARaMyDKT7R6x6yk9D5QEJ0P15a7Ha8FumjwRxJ3LdRb49mmvc1bt20zT5ke7UCZEpJIf3NFImmkr-6rfAqp4Zrel5GzMSxfNBBJkb1sNaLaQdDMb6vUqABL8GYzbL1K2E3OUlVvPRCrPB_DOBUlmIovzPKMqhOleMbYn7B-DJaF8HGLyGFYN4jXviTnMo5c0LWHSdXV3RG7BtJhuQMNHDMqretMg8luDeRHaL0UJ6P1VvdDhlCLlHQ/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2F The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://www.massgeneralbrigham.org/compliancelinehttps://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline <https://www.massgeneralbrigham.org/compliancelinehttps://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline> .
External Email - Use Caution
Hi there,
I'm not sure what's going on here, but an interactive bash shell might be initialized differently, it might help to run some simple test commands in a non-interactive shell
docker run --entrypoint /bin/bash <container> -c '<your commands here> '
eg
docker run --rm --entrypoint /bin/bash <container> -c 'export FREESURFER_HOME=/usr/local/freesurfer; source ${FREESURFER_HOME}/SetUpFreeSurfer.sh; mri_convert ${FREESURFER_HOME}/average/mni305.cor.mgz /tmp/cor.nii.gz'
From: Wighton, Paul PWIGHTON@mgh.harvard.edu Date: Wednesday, October 15, 2025 at 12:05 PM To: Freesurfer support list freesurfer@nmr.mgh.harvard.edu Subject: [External] [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively Hmm this is really odd. Are you able to generate a list of environment variables that are changing? PATH or LD_LIBRARY_PATH perhaps?
-Paul
________________________________________ From: Óscar Peña-Nogales opennog@gmail.com Sent: Monday, October 13, 2025 4:30 AM To: Freesurfer support list Subject: [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hi Paul and all!
Hmm, I am not sure that's the case. As I indicated in my first message, if I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. Sadly, there is no official freesurfer Docker image for version 5.3.0, and we cannot use newer versions because we would lose consistency on the already processed data. I guess it is not going to be deployed in the future, right?
Thanks!
On Fri, 10 Oct 2025 at 16:11, Wighton, Paul <PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu> wrote: Ah! FreeSurfer 5.3.0 is the reason. I think the license file format has changed at some point. I'm not sure how to get a 5.3.0 license file. Perhaps someone else on the list knows?
-Paul
________________________________________ From: Óscar Peña-Nogales <opennog@gmail.commailto:opennog@gmail.com> Sent: Friday, October 10, 2025 10:42 AM To: Freesurfer support list Subject: [Freesurfer] Re: recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hello,
Thanks for your inputs, however, when inspecting the container environment in runtime I can see that the variables are properly set: 'FREESURFER_HOME': '/usr/local/freesurfer', 'FS_LICENSE': '/usr/local/freesurfer/license.txt', 'FREESURFER_SETUP': '/usr/local/freesurfer/SetUpFreeSurfer.sh', 'MINC_BIN_DIR': '/usr/local/freesurfer/mni/bin',
But I get this error when running right after the command recon-all
-------------------------------------------------------------------------- ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/14aSsExdTw_3VEV4NwS-kNkXmwW4JxEr15aA6PH40aIeWu6B...http://secure-web.cisco.com/1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcotsw_l_JhT6CwIRnDBy3NuDwGhvZQSUxAUmWnQQWGF40iF4DjXyPY4CbCPnzf2_7YduA9uHNkLOb0TbWJGOX3-oZDBA1EXfBWiXCsgG2KftGopb1vDDt0OSs0n6oDrs3_kBvtikG65kIDk_ncZYQ3GtOB0j5GoC1bQ4kWGhcSKiQ1LspuBqNn4qNUi1pbvsS3oTaFbWSq4GgMZLui3yp6saepEHILiMKWnI-36nw9uA7iWpYy5s-PTmgbNuXfc9VnauMiDvVH5i_E_ojyAGjOvUmlae2AbVtpxNz5j5BQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/13ITYfFQZr4PJXzCC2haAqpvJXh5Qrbjr3chxJ_dYYlL-SK3L0aPPR-z9criRNYBVhA1z07s4OOtD1pGfgeNImIpQtCvNwN3_lav4ZAaX7X1N2vbdzVScbxIXqXjJfRcGlnFr4qpUmhaIexmfapdu7GDxIBtJY4umfbnsrOZxgG_dk1qUH8jHI4zLGXV_k5HIerVNUgghfoMP6y0VGnkBlGs6l2PEpVHxZD78gqZQ8z1MCxrwa6Qd0uK5vbtIO1gu_h5XEH9OkSbJjUnrlkTSUCo0xxmdXxCE0tPqrj0KAAtTsdUmGhosqCJ3c7pvT_OGtERpTUTa4rQTZ3RWxWw-DA/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu%253chttp%3A%2Fsecure-web.cisco.com%2F1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcotsw_l_JhT6CwIRnDBy3NuDwGhvZQSUxAUmWnQQWGF40iF4DjXyPY4CbCPnzf2_7YduA9uHNkLOb0TbWJGOX3-oZDBA1EXfBWiXCsgG2KftGopb1vDDt0OSs0n6oDrs3_kBvtikG65kIDk_ncZYQ3GtOB0j5GoC1bQ4kWGhcSKiQ1LspuBqNn4qNUi1pbvsS3oTaFbWSq4GgMZLui3yp6saepEHILiMKWnI-36nw9uA7iWpYy5s-PTmgbNuXfc9VnauMiDvVH5i_E_ojyAGjOvUmlae2AbVtpxNz5j5BQ%2Fhttp%253A%252F%252Fsurfer.nmr.mgh.harvard.edu%253e%253chttp%3A%2Fsecure-web.cisco.com%2F1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh%2Fhttp%253A%252F%252Fsurfer.nmr.mgh.harvard.edu%253e to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment. --------------------------------------------------------------------------
Then I don't think the SDK is modifying the environment, also the license.txt is found in the default location. I can even read it and print it at runtime. This is only happening for FreeSurfer 5.3.0 but not for later FreeSurfer versions (which are built using the same steps).
Any other suggestions?
Óscar
On Thu, 9 Oct 2025 at 14:33, Wighton, Paul <PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu<mailto:PWIGHTON@mgh.harvard.edumailto:PWIGHTON@mgh.harvard.edu>> wrote: Hi Oscar,
My guess is the FREESURFER_HOME environment variable is being cleared by the SDK. FreeSurfer will by default look for the license file at $FREESURFER_HOME/license.txt.
There is also the environment variable FS_LICENSE which can tell freesurfer where the license file is, but since in your case the file is in the standard location, I'm guessing that is not being used.
So setting FREESURFER_HOME=/usr/local/freesurfer
or FS_LICENSE=/usr/local/freesurfer/license.txt
should work.
-Paul
________________________________________ From: Óscar Peña-Nogales <opennog@gmail.commailto:opennog@gmail.com<mailto:opennog@gmail.commailto:opennog@gmail.com>> Sent: Wednesday, October 8, 2025 5:04 AM To: Freesurfer support list Subject: [Freesurfer] recon-all fails with "Invalid FreeSurfer license key" when executed via Docker SDK but works interactively
External Email - Use Caution
Hi all,
I’m running recon-all inside a Docker container, but it fails with the following error when launched programmatically through an SDK:
ERROR: Invalid FreeSurfer license key found in license file /usr/local/freesurfer/license.txt If you are outside the NMR-Martinos Center, go to http://secure-web.cisco.com/14aSsExdTw_3VEV4NwS-kNkXmwW4JxEr15aA6PH40aIeWu6B...http://secure-web.cisco.com/1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcotsw_l_JhT6CwIRnDBy3NuDwGhvZQSUxAUmWnQQWGF40iF4DjXyPY4CbCPnzf2_7YduA9uHNkLOb0TbWJGOX3-oZDBA1EXfBWiXCsgG2KftGopb1vDDt0OSs0n6oDrs3_kBvtikG65kIDk_ncZYQ3GtOB0j5GoC1bQ4kWGhcSKiQ1LspuBqNn4qNUi1pbvsS3oTaFbWSq4GgMZLui3yp6saepEHILiMKWnI-36nw9uA7iWpYy5s-PTmgbNuXfc9VnauMiDvVH5i_E_ojyAGjOvUmlae2AbVtpxNz5j5BQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQRG9rdbkiIwrMAAX_nB5vbgB1SinG3-ZgBHMj5v1kXw9Kzv2wjW822yvRSfacJPLxUclBW_SVfJmKMsRZJUYpRlyHv2tHipdp2sGkfU_uvsWOgij6a3Af0GFnxxy-lh717ouUQHFkQdxjpHzUyK8MdoIyl3TUT7JnwDVxDoS5a3YHcLkk3k9qOctUUpb3xhz22OxgPO5rn-Dyva9oEBOcajMvvJJ4C0-P1zH5ObSHsHQPDs46JbKWyOyBJb9waFQxxvzMy1_5J_Y3Qf2w2F5Iwy4jqW_0imkQOzvVAbCQ/http%3A%2F%2Fsurfer.nmr.mgh.harvard.eduhttp://secure-web.cisco.com/1WeJs0RquQ0iKFIUqc_FGdC8H9Wtp8KKk7bIVg_-xXaH_L31F6jFKEOMuANztUzQWiKl0ilIWnBvqhHU9A4gZrYkzD9HUdKIQ2pmfXgo79Rp2uUQFGLm0rB3FtkpaML6erRll_S2lQKOhKYW4ssHvSPbUjxKZmm1VH36NK79K2osnDpmLmiaSS4yv8bs3Ko4QPtEN-GIiRaNsPOcrOVZFcBBPcFpVQPELZn2ED5Za7LtgWscR_jiR_oNVKG15W6hNF7K-wGO3vPvsYIci-yLcsT9AyyHKYR9uVQtotnj45StletciQzxd8YjvrVnR8wzkVRGXTwEP6Y6YoTxd5ErmGA/http%3A%2F%2Fsurfer.nmr.mgh.harvard.edu%253chttp%3A%2Fsecure-web.cisco.com%2F1a66PuVVu5iB-V5I9_hFfhjImHTNEqZ9WwWaI6RezgTLXcotsw_l_JhT6CwIRnDBy3NuDwGhvZQSUxAUmWnQQWGF40iF4DjXyPY4CbCPnzf2_7YduA9uHNkLOb0TbWJGOX3-oZDBA1EXfBWiXCsgG2KftGopb1vDDt0OSs0n6oDrs3_kBvtikG65kIDk_ncZYQ3GtOB0j5GoC1bQ4kWGhcSKiQ1LspuBqNn4qNUi1pbvsS3oTaFbWSq4GgMZLui3yp6saepEHILiMKWnI-36nw9uA7iWpYy5s-PTmgbNuXfc9VnauMiDvVH5i_E_ojyAGjOvUmlae2AbVtpxNz5j5BQ%2Fhttp%253A%252F%252Fsurfer.nmr.mgh.harvard.edu%253e%253chttp%3A%2Fsecure-web.cisco.com%2F1UuxJ9PKT3fFdW0wXrNTOPTIiSy5-20crKGYhylPKuP_0IgqhwoqokkI1giaJcCCvXswT9R98XVpU5kaE4xZLZLPahxmDusPhPIfpID8vQY7yCkpJ2EXhJThdlfgh42RD-WKODDM4fyt4mu6XRiMd_1ZMPOxrWhTWuSmY6pT5wTKR8-Wa6MrzsAyRt57D9td0I4ibyaIEUyJCd2Y92PJB37VztMaPvyRB0eoW3zVlu0pV0A-9cjdBF1KWHmnPVqwbldIKEeaNQjr7JIA9tVd4tOVOOxKf5uAWH-1BA0PkEO2i3ug9nLPQ4_QNcUhCKWWh%2Fhttp%253A%252F%252Fsurfer.nmr.mgh.harvard.edu%253e%253chttp%3A%2Fsecure-web.cisco.com%2F1caZqJPIIzERnX6myZfn7lHvJljbS0zsXzR6nmSo47CLhLQRG9rdbkiIwrMAAX_nB5vbgB1SinG3-ZgBHMj5v1kXw9Kzv2wjW822yvRSfacJPLxUclBW_SVfJmKMsRZJUYpRlyHv2tHipdp2sGkfU_uvsWOgij6a3Af0GFnxxy-lh717ouUQHFkQdxjpHzUyK8MdoIyl3TUT7JnwDVxDoS5a3YHcLkk3k9qOctUUpb3xhz22OxgPO5rn-Dyva9oEBOcajMvvJJ4C0-P1zH5ObSHsHQPDs46JbKWyOyBJb9waFQxxvzMy1_5J_Y3Qf2w2F5Iwy4jqW_0imkQOzvVAbCQ%2Fhttp%253A%252F%252Fsurfer.nmr.mgh.harvard.edu%253e to get a valid license file (it's free). If you are inside the NMR-Martinos Center, make sure to source the standard environment.
The command used by the SDK looks like this: docker run -v /usr/local/lib/python3.10/dist-packages/xxxx/execution/communication.patch:/usr/local/lib/python3.11/dist-packages/xxxx/sdk/communication.py:ro \ --cap-drop=NET_RAW -dt --name analysis_1420668 --entrypoint /bin/bash \ --cpus=4 --memory=16384m \ europe-west3-docker.pkg.dev/xxxx/freesurfer_530:dev-1.0http://secure-web.cisco.com/1INXLcagbw9wIyfnTADeTLh0To-lszEo0YVx9I46hukyLx9tDTZzMJvMCeYrQGVjb_OWX_caJfxPKdLBuXsT-u2TI2spDCAtGHqcWR2mOI_GitmQyUSqI3RYs9bxz75e0QuREwuLQHr3p07sFQkpELqxQj8QjEnmVVGXcAyEQ63g1uK8bsijRnt71SHbcQ0AZpC_3Cjctpw8-9TsZePJqdSUUq5SF8_Z2PjWoAL6z7wmuG2iwaTx1lJT9aFYISQasRn3ZHMgO49_R-x6Q0G_TNkrsLV8BF3RE0gmGScdcxNxpz2b0-RWW5VfuxI043t4hnI0dPhK-cDHeiFsmHz8cBA/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0http://secure-web.cisco.com/10bra9HdhlTj-ut3zc8LkwW4v3HqCNE8wUuAPOxTCAvs-W1p5grvzxThkrG5888fg9txOOvbsWIeO118FIB4tJNtU82IWP3Tw9MfX8A_2hOIBofMORtaRHjIRA76ZhdWDhsAMdufHkbhc41hb2bs5lROt5vdJ3VS2R0eov10hPtJUgqlS36SrvCqsqgMkTHGLfD8X-DYr845SVRUbkjOC3vnOlYzjXJcJZb-UlEDcJ0a_nRqN0oKXpEBaVwjCgRQXE0TK5Lux56YLpjl-JdPZtMQ5U-eo3Xm-iN4UoKGkVNr-xKTA01k0g9b5Ju_S79NG/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0http://secure-web.cisco.com/1mwCEJkYKnfdfA22FPsDgHeg-XoCzA3_JkIyAVUiiiBYW-fxkpXwzJWcNA8mMiVFPMO_i08dRg5P8z2TJHyAgLNDI1bsYea4B8_tGf6AdM32EJixbXGcbGSeU45sh_WdYxn9IxNgQuEsRP8bD8e3C8dT7E3RUqyiBmH669XuUk3tkPdNXBnjryIfiipNNwL0ngSj-W0uPCKNe0yoJZ7Fcbuw2HXT3fMXAnlRjFePwpEtWquqGaPBD90e2d7LPU_qVJWtCRDGXAIQO-qVPgbzfkC9yNWEeXAgOeddwdgNHfErpiUIvw1rRxogfxBPUCF0FWYIsfzklPzKELpkzdqxMbw/http%3A%2F%2Feurope-west3-docker.pkg.dev%2Fxxxx%2Ffreesurfer_530%3Adev-1.0 \ /xxxx/entrypoint.sh --project 2289 --analysis 1420668 \ --token xxxx --url https://secure-web.cisco.com/1rIQHUfn_uqYbQPvKZbxY4ZWqBt9WTqB8hjnY925W0-A1kx...https://secure-web.cisco.com/1MWqwclSfbztHV6VxKjkHudNfmLaIwU08A1T9wXkRa9wcNtVt1LqSc3mYZEzAx6efVbrXNzDJFK31yHCrf_BD7oPyetTLlnJqxzAqamNliU77VSIj6b7xEDexwxes7dV37yRgFoRFuKI3QT8djy8lKyEqogbkxaO4uyhfw6Il13yAN4thl4t2IKUmnweoSo-9fIWiIaIRTIBOV3ccBRzC0Xb7-2XL5Ytk_5hoph1n0_S9O5ABakDL4dT0pTNU9HZ4nuRJeI3roWhvmtQWl3a109dEhfzdDgHPhQCq4FyIIa4U3FUcnRR183Xpbyz7srtp7HnFKTx--JQIpxLSWhi7cw/https%3A%2F%2Fxxxxx.com%2Fhttps://secure-web.cisco.com/1dwNyPHyZdF74N8CBbePYmDs_N5_8E-GU4rmVapLMhkXkNSf7f6pcnvxYQSKptKiCTyzoyGBG0gS6JD6rR9HqSzCYiBGf-cCCit7BG2iclr4tX-vIB920riAckJmrhacfFdB3PQ29DNXZ2gQ4Kts3gRejqTgCZd4QG-BHlAPuZgRSpPATVrAizqas2mf88nEmFAk1VHfYkmTgUxICNCjOn5sRwIhvBJF23ToXf3WukOJoJw-BtlueshU_reGsQ7QcFp0I4ycQRdluhZe_7k_0Wb_XJlVHezuxM1t4T8WaNIKQNQ6oGNLZhbu3ej_dW_b-/https%3A%2F%2Fxxxxx.com%2F<https://secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD...https://secure-web.cisco.com/1MWqwclSfbztHV6VxKjkHudNfmLaIwU08A1T9wXkRa9wcNtVt1LqSc3mYZEzAx6efVbrXNzDJFK31yHCrf_BD7oPyetTLlnJqxzAqamNliU77VSIj6b7xEDexwxes7dV37yRgFoRFuKI3QT8djy8lKyEqogbkxaO4uyhfw6Il13yAN4thl4t2IKUmnweoSo-9fIWiIaIRTIBOV3ccBRzC0Xb7-2XL5Ytk_5hoph1n0_S9O5ABakDL4dT0pTNU9HZ4nuRJeI3roWhvmtQWl3a109dEhfzdDgHPhQCq4FyIIa4U3FUcnRR183Xpbyz7srtp7HnFKTx--JQIpxLSWhi7cw/https%3A%2F%2Fxxxxx.com%2F%3e%3chttps:/secure-web.cisco.com/1dwNyPHyZdF74N8CBbePYmDs_N5_8E-GU4rmVapLMhkXkNSf7f6pcnvxYQSKptKiCTyzoyGBG0gS6JD6rR9HqSzCYiBGf-cCCit7BG2iclr4tX-vIB920riAckJmrhacfFdB3PQ29DNXZ2gQ4Kts3gRejqTgCZd4QG-BHlAPuZgRSpPATVrAizqas2mf88nEmFAk1VHfYkmTgUxICNCjOn5sRwIhvBJF23ToXf3WukOJoJw-BtlueshU_reGsQ7QcFp0I4ycQRdluhZe_7k_0Wb_XJlVHezuxM1t4T8WaNIKQNQ6oGNLZhbu3ej_dW_b-/https%3A%2F%2Fxxxxx.com%2F%3e%3chttps:/secure-web.cisco.com/1_ZG55biN3BILRStBLxIfao5TAMons8aRRsmdYirMJ90OwD2Lt1Q4r73hfoxAjuZKYF9WuMsDeJHZjd_EegU9PPSWTRd_-snZtEdbl-L6SrLp8leodWB8PW8uIx_2TgeZ_GzwXKw5tvLFZrlW4lfOyr-KMho7jyCobO0U0VKbcTHZU5_pQO6_l0PvazBy2vN5XI8rLwL-orl0PRuSn_hkxRUaWodXDQ9d8laPt802auFpG0h2Tqz-OvDpcRy4lOB7613atQgzO3Ud4rgjY7IkDwJnyeNCO9R9u_xT_9p9SqwzZqnhTkZl6WXtWCR-N4Y3I5Um1eIpEOuERQNut2spww/https%3A%2F%2Fxxxxx.com%2F> \ --tool-path tool:run
However, when I start the container manually (e.g., docker run -it ... /bin/bash) and run recon-all inside it directly, the license is detected and validated correctly. So the license.txt file at /usr/local/freesurfer/license.txt itself appears to be valid. This suggests the issue is related to how the container is executed by the SDK or entrypoint, possibly involving the entrypoint script /xxx/entrypoint.sh altering the environment before recon-all starts.
The Docker container has: Ubuntu 22.04 Python 3.11
Has anyone seen a similar issue where FreeSurfer fails to validate the license only when invoked non-interactively?
Are there specific environment variables or checks that recon-all performs which might differ when running under /bin/bash -c or through an SDK wrapper?
Any insights or debugging suggestions would be greatly appreciated.
Thanks! _______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu<mailto:freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu> To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu<mailto:freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu> https://secure-web.cisco.com/10tzI4aTScRpaoE0uDw45TctGHMU5QDGKw1hrPpLFIuFZVy...https://secure-web.cisco.com/13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pfzWmPeAwjiUQNTcNLIZa2-M1LGjxUPgK0xezPlbBMVQRY28C8byARaMyDKT7R6x6yk9D5QEJ0P15a7Ha8FumjwRxJ3LdRb49mmvc1bt20zT5ke7UCZEpJIf3NFImmkr-6rfAqp4Zrel5GzMSxfNBBJkb1sNaLaQdDMb6vUqABL8GYzbL1K2E3OUlVvPRCrPB_DOBUlmIovzPKMqhOleMbYn7B-DJaF8HGLyGFYN4jXviTnMo5c0LWHSdXV3RG7BtJhuQMNHDMqretMg8luDeRHaL0UJ6P1VvdDhlCLlHQ/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2Fhttps://secure-web.cisco.com/1azVNbHYfrpkN0ViChl6dOJcXJLtuSXYazp3wjXvAQIekhxhdi4fSKjDQlYfk5oF1Oi8fN7JeXZMC7Teol66gLKf2KL9qSYKzYP_ouWXDKmC4a8Du_kgeeXTwh-GEpnyyffHT4jjrRt_hOMkpM74lbVs8yENnOdlp8yAsiBvnjYCzfO73OQP1UMT8sYXCjeN1V-9pAkmGuruztnStFmxUT2-XTZQraJ-4aT45zNHnEx825h7YUrX2HP_jFmJQPkICuJOvSmq8_4kvRAYtadhvJ8tcEgPJdWlcq-YDyF23qdGoyZQkzuGpi1k2V79il616/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2Fhttps://secure-web.cisco.com/1qGcL2H4c7fhz6F1yPKk_aylUh8DGbSotP9mwJVk-8AZA0GnNYw6_IQaCSskFyrkRHV35POxqLi8jpZkJDmNQcUIGnPey6PeF-a8zYV-9oMvIcG-7b0zSdzC55OIXQXAmRKIJNRMylwzXlpXICkWwN_-Z4zI37I2RH0Yg8hmiiaxIT7V17dkCWZJZtVO_wwiiwbXHX77wwJk_w2Cbswmc8nSKqAw6nMpHhOpZbJO0-j4A73YJV7fe-C8l5_gr8qotsXtoX0Jez0M2Mrpk0ZNCOWMfMVGmyYjC_M7sJj6TvWoJZYpFA5WlxtM0w0j-Ora32eiF13A-AKufJ0SlFf64ng/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2F%253chttps%3A%2Fsecure-web.cisco.com%2F13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pfzWmPeAwjiUQNTcNLIZa2-M1LGjxUPgK0xezPlbBMVQRY28C8byARaMyDKT7R6x6yk9D5QEJ0P15a7Ha8FumjwRxJ3LdRb49mmvc1bt20zT5ke7UCZEpJIf3NFImmkr-6rfAqp4Zrel5GzMSxfNBBJkb1sNaLaQdDMb6vUqABL8GYzbL1K2E3OUlVvPRCrPB_DOBUlmIovzPKMqhOleMbYn7B-DJaF8HGLyGFYN4jXviTnMo5c0LWHSdXV3RG7BtJhuQMNHDMqretMg8luDeRHaL0UJ6P1VvdDhlCLlHQ%2Fhttps%253A%252F%252Fmail.nmr.mgh.harvard.edu%252Fmailman3%252Flists%252Ffreesurfer%2540nmr.mgh.harvard.edu%252F%253e%253chttps%3A%2Fsecure-web.cisco.com%2F1azVNbHYfrpkN0ViChl6dOJcXJLtuSXYazp3wjXvAQIekhxhdi4fSKjDQlYfk5oF1Oi8fN7JeXZMC7Teol66gLKf2KL9qSYKzYP_ouWXDKmC4a8Du_kgeeXTwh-GEpnyyffHT4jjrRt_hOMkpM74lbVs8yENnOdlp8yAsiBvnjYCzfO73OQP1UMT8sYXCjeN1V-9pAkmGuruztnStFmxUT2-XTZQraJ-4aT45zNHnEx825h7YUrX2HP_jFmJQPkICuJOvSmq8_4kvRAYtadhvJ8tcEgPJdWlcq-YDyF23qdGoyZQkzuGpi1k2V79il616%2Fhttps%253A%252F%252Fmail.nmr.mgh.harvard.edu%252Fmailman3%252Flists%252Ffreesurfer%2540nmr.mgh.harvard.edu%252F%253e The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://secure-web.cisco.com/1keYca5NGCi2-p_gb9fFQ-cVikUC_dzS5hBZNZqDRrGPCQ1...https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcompliancelinehttps://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcompliancelinehttps://secure-web.cisco.com/16Klo6Iq940dt30wtjscTL7gmcKUBDdkk0Fbl5KUgHcc5pj7B1lIUQtoCQ-4ncWN8v4nzozxgeme8U_KlfcKL-8Oq_WcH9OrlNL3YINZhAM44z0t8Mz-4qCu1x7FBZvXFw9_Z9mJdxywZVUEwHmerehbLc2bI3g8fHbdZUjYRTAsKCz9A_8nKzpHE9O2oV5jai2PHQWqaYxT1EbX_uBeLMaBGZChPPhBW9ou69crZGwcC-VDAILL4-r-lhaVanoSW_i60loLFnuzDahiHq-2cRZw5hassmIQvkts8SYi6A00kQkoS6QlAzlKLo0uH9HnX5_x7nIsLoCLIbhHRCpyDHQ/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline%253chttps%3A%2Fsecure-web.cisco.com%2F1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw%2Fhttps%253A%252F%252Fwww.massgeneralbrigham.org%252Fcomplianceline%253e%253chttps%3A%2Fsecure-web.cisco.com%2F1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1%2Fhttps%253A%252F%252Fwww.massgeneralbrigham.org%252Fcomplianceline%253e <https://secure-web.cisco.com/1keYca5NGCi2-p_gb9fFQ-cVikUC_dzS5hBZNZqDRrGPCQ1...https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline<https://secure-web.cisco.com/1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2...https://secure-web.cisco.com/1qV2QKlWXYTTjZAZU0cRAxluYLWkaacAqSL-3an7yfNDeNtzPNfIrM_AEezKppLygYPz50L0gb5DTjZ9cGzkVTjMORaJp5qKLOIsxSAtEFvkYM3Fc7i_UnIDrTTyqhjKYsyEXtoZeJ_Xe92Fepa3E7fIZBQ3l6QZvOHy9F3hEZ4wS4-BM_64sYJ-YsR5szyHoZbC2shKV3we9Jpq_smjs9azepegMzR2RtqxMARyWwJcEUwekuiR5Id3E5i43-vSUGhxllA5ebA5Q2RTUEwrlyhO7JvNuuj3N5IaDHJPolaWWeWZid5dE2F8nhqG0taGOpmcANexyGWkm62hD36VV5w/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline%253chttps%3A%2Fsecure-web.cisco.com%2F1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw%2Fhttps%253A%252F%252Fwww.massgeneralbrigham.org%252Fcomplianceline%253e%253chttps%3A%2Fsecure-web.cisco.com%2F1mRJFOoGXgrrIRSmKfaRCNPfFodvN1HTrg_NnlvaIiJSkM2N_bUX16WLALNzpiwZEVmyyEx3ST_wqX3z7cT2GHnCGI-cTgWhbmzVBcbKfa1jJHwj3anL1c1tu0GVQRCtATH8-N-kf9ljQjPgzkv7hDUVtBZ0tacxVFZ2mA2AITK4Wnt3NzdvxPaGCOtotoEPgGSF8C0syhZvCWA0WeI1d7te5Tm4UB3scQcB_OVH74BRxq_8Y7m6s9ihZbwevCp9vddcSpBgZMAKdKHjn2mN0wW5pEBHcH4fnHGJP0Qq5XZLZnN2_6uO-7qxgLjY-HTg1%2Fhttps%253A%252F%252Fwww.massgeneralbrigham.org%252Fcomplianceline>> .
_______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edumailto:freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edumailto:freesurfer-leave@nmr.mgh.harvard.edu https://secure-web.cisco.com/10tzI4aTScRpaoE0uDw45TctGHMU5QDGKw1hrPpLFIuFZVy...https://secure-web.cisco.com/13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pfzWmPeAwjiUQNTcNLIZa2-M1LGjxUPgK0xezPlbBMVQRY28C8byARaMyDKT7R6x6yk9D5QEJ0P15a7Ha8FumjwRxJ3LdRb49mmvc1bt20zT5ke7UCZEpJIf3NFImmkr-6rfAqp4Zrel5GzMSxfNBBJkb1sNaLaQdDMb6vUqABL8GYzbL1K2E3OUlVvPRCrPB_DOBUlmIovzPKMqhOleMbYn7B-DJaF8HGLyGFYN4jXviTnMo5c0LWHSdXV3RG7BtJhuQMNHDMqretMg8luDeRHaL0UJ6P1VvdDhlCLlHQ/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2Fhttps://secure-web.cisco.com/1jVkniGnO4zeIZ95wVdddL-0rGRVddeAx3jgXee7o1vd612fOh66HkpJYKHN5skLMkhZk2wOffSJnkgtMyLZ3-R1dicO23b85UGbXGJ-Lps3t7zwLp6KJAcQUqdbrMBkn0Ph7B8_k9ItsY-9Xp8i-T6b5yCljCLVqNmzr6HMLyC076yr09vmhxM0AkpVeNNO-4UYxhtugY4DDUWiyBc8WKTF-17tTQzWtsyI3t6rl_niDI5avJueJo1VJ4awhRjIZacdZ4IAoXaNeTtSPoPLFjJMbxaFykqV7KS22KEfuWq_p40MKZVlEChq86aD73v_3r6kBTN6WTGLD7qv6Fy4IzQ/https%3A%2F%2Fmail.nmr.mgh.harvard.edu%2Fmailman3%2Flists%2Ffreesurfer%40nmr.mgh.harvard.edu%2F%253chttps%3A%2Fsecure-web.cisco.com%2F13AAOUe6lOF8-oAxO5AHyZgB30lnGgLHUz77FWkRBm4E9pfzWmPeAwjiUQNTcNLIZa2-M1LGjxUPgK0xezPlbBMVQRY28C8byARaMyDKT7R6x6yk9D5QEJ0P15a7Ha8FumjwRxJ3LdRb49mmvc1bt20zT5ke7UCZEpJIf3NFImmkr-6rfAqp4Zrel5GzMSxfNBBJkb1sNaLaQdDMb6vUqABL8GYzbL1K2E3OUlVvPRCrPB_DOBUlmIovzPKMqhOleMbYn7B-DJaF8HGLyGFYN4jXviTnMo5c0LWHSdXV3RG7BtJhuQMNHDMqretMg8luDeRHaL0UJ6P1VvdDhlCLlHQ%2Fhttps%253A%252F%252Fmail.nmr.mgh.harvard.edu%252Fmailman3%252Flists%252Ffreesurfer%2540nmr.mgh.harvard.edu%252F%253e The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://secure-web.cisco.com/1keYca5NGCi2-p_gb9fFQ-cVikUC_dzS5hBZNZqDRrGPCQ1...https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcompliancelinehttps://secure-web.cisco.com/1kxw4wG2NjTU-afjYhoEIp8H16oIR30OyyxcKadrW9HlAN9pOHxVpODMXIltH_KyVpqmB2z8WHpXqeRMU9G6_4Z4nhILgyRV8qVma8V1AHn_GE8W0CLfFkiOxE160poCKZADTQfxqdhhbAa3p1iWDTDNuSsSUtiS8JqA3pS5Q9L9MrpqZnXRfEsq0_pxljCcvkOKSZ8H8p2XgKWuv7RXyvckOu3nr-yiXEQuy06UJOBQN0cipA4yqZIxBdsaS7mL11liExrrm9ASMnxe_ZOJerco5gFyJVXrLQexWDFw7nX-JbNTrnxFIhVva_q1CBZxXbDcHXSneUfZwIijbmgzWwQ/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline%253chttps%3A%2Fsecure-web.cisco.com%2F1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw%2Fhttps%253A%252F%252Fwww.massgeneralbrigham.org%252Fcomplianceline%253e <https://secure-web.cisco.com/1keYca5NGCi2-p_gb9fFQ-cVikUC_dzS5hBZNZqDRrGPCQ1...<https://secure-web.cisco.com/1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9f...https://secure-web.cisco.com/13lYqYDe8NtYIuhMZ42Qh70pyEjRiplaCUmT-04m4jOpQ16lidJLOBziGBWB6PmUZ3fZ8HGb7esh_Xr-tL_RGEAD8GOYm3PbD2xYY6bCx7xGVjzpnrygA2b51KBXTh40CKp9c2xGuGIe601e1AQQiXtW5_wh0wmwSFPONMTR7KEK_zus_tOk55yXTaXo2otEYfhjTo0wdDIGAdzJV8jmxlXJYdlORd8pid9Ke_UQjTJbC8bwDvJ8NTQ0b-FGk3jFX6oOgp5p7oIbK-rWnT7bK7u_dmq_4BdcuBX7LmSPQnOo32TV4Mw4ActMimdGSrFSpHCn7Dt_QTi5VUk5OGEVE2A/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline%253chttps%3A%2Fsecure-web.cisco.com%2F1aV2K88YtvfcLCBIDXqcuJQ-SgnG9CPnvw63EwhOKQJ3W9fDZWrWbAgYTlOzywZdc7J91hXF2F6VwxZleZJf1MfCFJn78pw2S6kaFNZ_zOKOgHJade7DAhvVAp0TOGsckeE_A2PlcbbAawXkqZ_INHjXzWYH7dKNA8F205_mlGqq8PoMYpYZhzUJd_1A-Z-A9iN0NT_Eu3Tz8bXoXeXHYU_jwIvPMJPV_QpGN4fTCABwU8K5k1jddFWT6X90nbumUT3uTs0LSbhkQwvS5Fg8kv-IeNyV9f34oRNSj_ipl5aU_7gpj8Y3YVllYwY6dEEO_0lRaR_dkHyIijFpvP5fVmw%2Fhttps%253A%252F%252Fwww.massgeneralbrigham.org%252Fcomplianceline>> .
_______________________________________________ Freesurfer mailing list -- freesurfer@nmr.mgh.harvard.edu To unsubscribe send an email to freesurfer-leave@nmr.mgh.harvard.edu https://secure-web.cisco.com/10tzI4aTScRpaoE0uDw45TctGHMU5QDGKw1hrPpLFIuFZVy... The information in this e-mail is intended only for the person to whom it is addressed. If you believe this e-mail was sent to you in error and the e-mail contains patient information, please contact the Mass General Brigham Compliance HelpLine at https://secure-web.cisco.com/1keYca5NGCi2-p_gb9fFQ-cVikUC_dzS5hBZNZqDRrGPCQ1... https://secure-web.cisco.com/1keYca5NGCi2-p_gb9fFQ-cVikUC_dzS5hBZNZqDRrGPCQ1N8ES09SdXya93DI2Nk7a-dh4a_58ZhUPbFyYiI2LvVat2CPmzvBDWUuJ6Wse57Hq8LtlB7qP1GwuQcNqjfcd5vnwp5Mu9YD6UpshcNWXSUtCUewoXuxrhPe65Q_85F3lR9FvbLOzrhQQlAc5SqM4023wXOtxBRgkMnMA-iiic7TjCPY-8rfQoRn7TvtQSmqICqPbGHt66suFeLUWNH9VdLo8B02KvM4sGqSALaBfyl5P61hDTQs6xcB1XsERcn-n3PCoAs_d3PEZDXQ64Aj0Dnqu04UTtvktUvs7TzGw/https%3A%2F%2Fwww.massgeneralbrigham.org%2Fcomplianceline .
freesurfer@nmr.mgh.harvard.edu