Debugging workflows - shell access

Note:

This tutorial assumes that you have access to Arvados command line tools, configured your API token, and confirmed a working environment.

Note:

To use this feature, your Arvados installation must be configured to allow container shell access. See the install guide for more information.

The arvados-client program can be used to connect to a container in a running workflow. It can be installed from packages (apt install arvados-client or dnf install arvados-client). The arvados-client shell command provides an ssh connection into a running container.

Syntax

The arvados-client shell tool has the following syntax:

~$ arvados-client shell -h
arvados-client shell: open an interactive shell on a running container.

Usage: arvados-client shell [options] [username@]container-uuid [ssh-options] [remote-command [args...]]

Options:
  -detach-keys string
      set detach key sequence, as in docker-attach(1) (default "ctrl-],ctrl-]")

The arvados-client shell command calls the ssh binary on your system to make the connection. Everything after [username@]container-uuid is passed through to your OpenSSH client.

Examples

Connect to a running container, using the container request UUID:

~$ arvados-client shell ce8i5-xvhdp-e6wnujfslyyqn4b
root@0f13dcd755fa:~#

The container UUID also works:

~$ arvados-client shell ce8i5-dz642-h1cl0sa62d4i430
root@0f13dcd755fa:~#

SSH port forwarding is supported:

~$ arvados-client shell ce8i5-dz642-h1cl0sa62d4i430 -L8888:localhost:80
root@0f13dcd755fa:~# nc -l -p 80

And then, connecting to port 8888 locally:

~$ echo hello | nc localhost 8888

Which appears on the other end:

~$ arvados-client shell ce8i5-dz642-h1cl0sa62d4i430 -L8888:localhost:80
root@0f13dcd755fa:~# nc -l -p 80
hello

Previous: Analyzing workflow performance Next: Analyzing workflow cost (cloud only)

The content of this documentation is licensed under the Creative Commons Attribution-Share Alike 3.0 United States licence.
Code samples in this documentation are licensed under the Apache License, Version 2.0.