Skip to content

Commit

Permalink
- Add more server URLs with updated ones in neurodesk.ardc.edu.au.conf
Browse files Browse the repository at this point in the history
- Modify test-cvmfs.yml and test_cvmfs.sh for better server probing
- Add static strace executable to Docker image for debugging purposes and remove packaged strace
- Adjust jupyter environment variables for Docker compatibility on Apple silicon
- Fix user-mapping.xml for VNC connection and remove obsolete configuration file
  • Loading branch information
stebo85 committed Dec 6, 2024
1 parent 468ce81 commit 63669d1
Show file tree
Hide file tree
Showing 8 changed files with 33 additions and 115 deletions.
70 changes: 2 additions & 68 deletions .github/workflows/test-cvmfs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,7 @@ jobs:
"s1bnl-cvmfs.openhtc.io",
"s1osggoc-cvmfs.openhtc.io:8080",
"s1brisbane-cvmfs.openhtc.io",
"cvmfs-brisbane.neurodesk.org",
"cvmfs-perth.neurodesk.org",
"s1perth-cvmfs.openhtc.io",
"s1nikhef-cvmfs.openhtc.io",
"cvmfs-frankfurt.neurodesk.org",
"cvmfs-geoproximity.neurodesk.org",
Expand All @@ -63,69 +62,4 @@ jobs:
with:
filename: .github/job_failure_issue_template.md
update_existing: true
search_existing: open



# # currently not yet working:
# cvmfs-egi.gridpp.rl.ac.uk:8000
# "s1ral-cvmfs.openhtc.io:8080",

# "cvmfs-s1.hpc.swin.edu.au:8080",
# s1swinburne-cvmfs.openhtc.io:8080,

# "cvmfs-stratum-one.ihep.ac.cn:8080",
# s1ihep-cvmfs.openhtc.io:8080,

# vmfs-s1bnl.opensciencegrid.org,
# "s1bnl-cvmfs.openhtc.io:8080",

# cvmfs01.nikhef.nl,
# "s1nikhef-cvmfs.openhtc.io:8080",


# working
# cvmfs-s1fnal.opensciencegrid.org:8000
# s1fnal-cvmfs.openhtc.io:8080",
# Illinois, USA

# sampacs01.if.usp.br:8000
# "s1sampa-cvmfs.openhtc.io:8080",
# Sao Paulo, Brazil

# cvmfs-s1goc.opensciencegrid.org:8000
# "s1osggoc-cvmfs.openhtc.io:8080",
# Lincoln, Nebraska, USA

# cvmfs-brisbane.neurodesk.org
# "s1brisbane-cvmfs.openhtc.io",
# Brisbane, Australia

# cdn:
# s1ral-cvmfs.openhtc.io
# s1nikhef-cvmfs.openhtc.io
# s1bnl-cvmfs.openhtc.io
# s1fnal-cvmfs.openhtc.io:8080
# s1ihep-cvmfs.openhtc.io:8080
# s1swinburne-cvmfs.openhtc.io:8080
# s1sampa-cvmfs.openhtc.io:8080
# s1osggoc-cvmfs.openhtc.io:8080
# s1brisbane-cvmfs.openhtc.io


# stratum1:
# cvmfs-egi.gridpp.rl.ac.uk:8000
# cvmfs01.nikhef.nl:8000
# cvmfs-s1bnl.opensciencegrid.org:8000
# cvmfs-s1fnal.opensciencegrid.org:8000
# cvmfs-stratum-one.ihep.ac.cn:8000
# cvmfs-s1.hpc.swin.edu.au:8000
# sampacs01.if.usp.br:8000
# cvmfs-s1goc.opensciencegrid.org:8000
# cvmfs-brisbane.neurodesk.org




# DNS setup:

search_existing: open
3 changes: 0 additions & 3 deletions .github/workflows/test_cvmfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,9 @@ curl --head http://cvmfs-geoproximity.neurodesk.org/cvmfs/neurodesk.ardc.edu.au/
echo "[DEBUG]: Test download from cvmfs.neurodesk.org"
curl --head http://cvmfs.neurodesk.org/cvmfs/neurodesk.ardc.edu.au/.cvmfspublished

cvmfs_config probe neurodesk.ardc.edu.au

cvmfs_config stat -v neurodesk.ardc.edu.au



## Test if containers are on CVMFS:
wget https://raw.githubusercontent.com/NeuroDesk/neurocommand/main/cvmfs/log.txt
echo "debug logfile:"
Expand Down
13 changes: 10 additions & 3 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ USER root
#========================================#
# Core services
#========================================#


# Install base image dependencies
RUN apt-get update --yes \
Expand All @@ -34,7 +35,6 @@ RUN apt-get update --yes \
libssl-dev \
libwebp-dev \
libssh2-1-dev \
strace \
# SSH (Optional)
libpango1.0-dev \
## VNC
Expand All @@ -57,8 +57,13 @@ RUN apt-get update --yes \
apt-transport-https \
&& apt-get clean && rm -rf /var/lib/apt/lists/*

# add a static strace executable to /opt which we can copy to containers for debugging:
RUN mkdir -p /opt/strace \
&& wget -qO- https://github.com/JuliaBinaryWrappers/strace_jll.jl/releases/download/strace-v6.7.0%2B1/strace.v6.7.0.x86_64-linux-gnu.tar.gz | tar xz -C /opt/strace --strip-components=1 \
&& chmod +x /opt/strace

ARG TOMCAT_REL="9"
ARG TOMCAT_VERSION="9.0.87"
ARG TOMCAT_VERSION="9.0.97"
ARG GUACAMOLE_VERSION="1.5.5"

ENV LANG ""
Expand Down Expand Up @@ -205,9 +210,10 @@ RUN /opt/conda/bin/pip install nipype matplotlib datalad-container datalad-osf o
# Install jupyter-server-proxy and disable announcements
# Deprecated: jupyter labextension install ..
# jupyter_server_proxy needs to be at least 4.2.0 to fix CVE-2024-35225
# jupyterlmod==4.0.3 needs to be pinned for now because they broken the API after that and have not fixed it yet in 5.2.1: https://github.com/cmd-ntrf/jupyter-lmod/issues/79
RUN /opt/conda/bin/pip install jupyter-server-proxy \
&& /opt/conda/bin/jupyter labextension disable @jupyterlab/apputils-extension:announcements \
&& /opt/conda/bin/pip install jupyterlmod \
&& /opt/conda/bin/pip install jupyterlmod==4.0.3 \
&& /opt/conda/bin/pip install jupyterlab-git \
&& /opt/conda/bin/pip install jupyterlab_rise \
&& /opt/conda/bin/pip install ipycanvas \
Expand Down Expand Up @@ -391,5 +397,6 @@ RUN rm /home/${NB_USER}/skipcache \
# Set SINGULARITY_BINDPATH and MODULEPATH here so it's available within a notebook (the startup scripts set these things too late):
ENV APPTAINER_BINDPATH=/data,/mnt,/neurodesktop-storage,/tmp,/cvmfs
ENV MODULEPATH=/cvmfs/neurodesk.ardc.edu.au/containers/modules/
# This workaround is currently needed for Docker on Apple silicone - they broke normal mounting of /cvmfs in the custom docker kernel. Mounting as writable works around it.
ENV neurodesk_singularity_opts=" -w "

4 changes: 2 additions & 2 deletions config/cvmfs/neurodesk.ardc.edu.au.conf
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
CVMFS_USE_GEOAPI=no
CVMFS_SERVER_URL="http://cvmfs.neurodesk.org/cvmfs/@fqrn@;http://cvmfs-geoproximity.neurodesk.org/cvmfs/@fqrn@"
CVMFS_USE_GEOAPI=yes
CVMFS_SERVER_URL="http://s1perth-cvmfs.openhtc.io/cvmfs/@fqrn@;http://s1fnal-cvmfs.openhtc.io:8080/cvmfs/@fqrn@;http://s1sampa-cvmfs.openhtc.io:8080/cvmfs/@fqrn@;http://s1osggoc-cvmfs.openhtc.io:8080/cvmfs/@fqrn@;http://s1brisbane-cvmfs.openhtc.io/cvmfs/@fqrn@;http://s1nikhef-cvmfs.openhtc.io/cvmfs/@fqrn@;http://cvmfs.neurodesk.org/cvmfs/@fqrn@;http://s1bnl-cvmfs.openhtc.io/cvmfs/@fqrn@"
CVMFS_KEYS_DIR="/etc/cvmfs/keys/ardc.edu.au/"
20 changes: 17 additions & 3 deletions config/guacamole/user-mapping.xml
Original file line number Diff line number Diff line change
@@ -1,16 +1,30 @@
<user-mapping>
<authorize username="jovyan" password="password">
<connection name="Desktop Dynamic-Resolution (RDP)">
<connection name="Desktop RDP - changes resolution by resizing window and waiting for refresh">
<protocol>rdp</protocol>
<param name="hostname">localhost</param>
<param name="username">jovyan</param>
<param name="password">password</param>
<param name="port">3389</param>
<param name="security\">any</param>
<param name="security">any</param>
<param name="ignore-cert">true</param>
<param name="resize-method\">reconnect</param>
<param name="resize-method">reconnect</param>
<param name="enable-drive">true</param>
<param name="drive-path">/home/jovyan/Desktop</param>
</connection>
<connection name="Desktop VNC - changes resolution by running lxrandr on a terminal">
<protocol>vnc</protocol>
<param name="hostname">localhost</param>
<param name="username">jovyan</param>
<param name="password">password</param>
<param name="port">5901</param>
<param name="enable-sftp">true</param>
<param name="sftp-hostname">localhost</param>
<param name="sftp-username">jovyan</param>
<param name="sftp-port">2222</param>
<param name="sftp-directory">/home/jovyan/Desktop</param>
<param name="sftp-private-key">
</param>
</connection>
</authorize>
</user-mapping>
30 changes: 0 additions & 30 deletions config/guacamole/user-mappingOLDWITHVNC.xml

This file was deleted.

3 changes: 1 addition & 2 deletions config/jupyter/before_notebook.sh
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,7 @@ if [ ! -d "/cvmfs/neurodesk.ardc.edu.au/neurodesk-modules/" ]; then

echo "\
==================================================================
Testing which CVMFS server is fastest"
cvmfs_talk -i neurodesk.ardc.edu.au host probe
CVMFS servers:"
cvmfs_talk -i neurodesk.ardc.edu.au host info
fi
fi
Expand Down
5 changes: 1 addition & 4 deletions config/jupyter/environment_variables.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,11 @@ export MPLCONFIGDIR=/home/${NB_USER}/.config/matplotlib-mpldir
export PATH=$PATH:/home/${NB_USER}/.local/bin:/opt/conda/bin:/opt/conda/condabin

# this adds --nv to the singularity calls -> but only if a GPU is present
if [ "`lspci | grep -i nvidia`" ]
if [ "$(lspci | grep -i nvidia)" ]
then
export neurodesk_singularity_opts="${neurodesk_singularity_opts} --nv "
fi

# fix for kernel bug in docker on arm64 when using a read-only bindmount from a fuse mount. The -w flag makes the container writable instead of read-only which works around the issue
export neurodesk_singularity_opts="${neurodesk_singularity_opts} -w "

export PS1='\u@neurodesktop-$NEURODESKTOP_VERSION:\w$ '

alias ll='ls -la'

0 comments on commit 63669d1

Please sign in to comment.