.. _`globus-connect-personal-dockerimage`: =================================== Globus Connect Personal Dockerimage =================================== .. contents:: :depth: 1 :local: .. admonition:: Compute Resources - Have questions or need help with compute, including activation or issues? Follow `this link. `__ - :ref:`User Agreement ` .. admonition:: Docker Usage - The information contained on this page assumes that you have a knowledge base of using Docker to create images and push them to a repository for use. If you need to review that information, please see the links below. - :ref:`Docker and the RIS Compute Service ` - :ref:`Docker Basics: Building, Tagging, & Pushing A Custom Docker Image ` .. _`globus-connect-personal-dockerimage-software`: Software Included ----------------- - tk - tcllib - wget - python3 - Globus Connect Personal (https://downloads.globus.org/globus-connect-personal/linux/stable/globusconnectpersonal-latest.tgz) .. _`globus-connect-personal-dockerimage-development`: Development Notes ----------------- - This image is designed for transfer of data to local or scratch storage only. .. _`globus-connect-personal-dockerimage-dockerfile`: Dockerfile ---------- - The Globus Connect Personal Docker image is hosted at the following location. .. code:: gcr.io/ris-registry-shared/globus .. _`globus-connect-personal-dockerimage-requirements`: Requirements for Usage in RIS ----------------------------- Setting up on Compute1 ~~~~~~~~~~~~~~~~~~~~~~ - Submit a job to run container with the following command. - Add any paths you want to access from the Globus client (local or scratch) and your HOME directory is required. .. code:: PATH=/opt/globus/globusconnectpersonal-3.1.4:$PATH LSF_DOCKER_VOLUMES="$HOME:$HOME /path/to/directory:/path/to/directory" bsub -q general-interactive -Is -a 'docker(gcr.io/ris-registry-shared/globus)' /bin/bash - `/path/to/directory` in the command is the path of the local or scratch directory that you wish to enable as an endpoint in Globus. .. Note:: If you are a member of more than one compute group, you will be prompted to specify an LSF User Group with ``-G group_name`` or by setting the ``LSB_SUB_USER_GROUP`` variable. - While inside the container, setup can be started with the following command. .. code:: globusconnectpersonal -setup - This will start a guide that goes through the steps necessary for setting up Globus Connect Personal and will look like the following. .. code:: Globus Connect Personal needs you to log in to continue the setup process. We will display a login URL. Copy it into any browser and log in to get a single-use code. Return to this command with the code to continue setup. Login here: ----- https://auth.globus.org/v2/oauth2/authorize?client_id=4d6448ae-8ca0-40e4-aaa9- 8ec8e8320621&redirect_uri=https%3A%2F%2Fauth.globus.org%2Fv2%2Fweb%2Fauth-code&scope=openid+profile+urn% 3Aglobus%3Aauth%3Ascope%3Aauth.globus.org%3Aview_identity_set+urn%3Aglobus%3Aauth%3Ascope%3Atransfer.api. globus.org% 3Agcp_install&state=_default&response_type=code&code_challenge=Cqt4heM3uz7n_QRRbNjtXheBckZVf9UESZREwjc4xVA&co de_challenge_method=S256&access_type=online&prefill_named_grant=compute1-exec-N.ris.wustl.edu ----- Enter the auth code: hIdkJ4jptWByPKvlbKUNvNFzcy4DiL == starting endpoint setup Input a value for the Endpoint Name: username-personal-endpoint-compute1-exec-N registered new endpoint, id: ace0c3fc-a3b7-11eb-92d2-6b08dd67ff48 setup completed successfully - The compute1-exec-N that is used comes from the node the job lands on. - This is important to remember for the next step and any future use of Globus through this method. Running on Compute1 ~~~~~~~~~~~~~~~~~~~ - After the initial setup, the following command can be used to start up the client at any time. .. code:: PATH=/opt/globus/globusconnectpersonal-3.1.4:$PATH LSF_DOCKER_VOLUMES="$HOME:$HOME /path/to/directory:/path/to/directory" bsub -q general -m compute1-exec-N -a 'docker(gcr.io/ris-registry-shared/globus)' globusconnectpersonal -start -restrict-paths rw~/,rw/path/to/directory,/tmp - `/path/to/directory` is the same directory and path that was enabled in the setup part of the process. - `compute1-exec-N` needs to be replaced with the same node name that the setup step ran on. - `N` represents a number that is the number of one of the nodes. .. Note:: If you are a member of more than one compute group, you will be prompted to specify an LSF User Group with ``-G group_name`` or by setting the ``LSB_SUB_USER_GROUP`` variable. - The endpoint that is the local or scratch directory can be now accessed via the web app and used for data transfer. - https://app.globus.org/