--- layout: default navsection: userguide title: Debugging workflows - shell access ... {% comment %} Copyright (C) The Arvados Authors. All rights reserved. SPDX-License-Identifier: CC-BY-SA-3.0 {% endcomment %} {% include 'tutorial_expectations' %} {% include 'notebox_begin' %} To use this feature, your Arvados installation must be configured to allow container shell access. See "the install guide":{{site.baseurl}}/install/container-shell-access.html for more information. {% include 'notebox_end' %} 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. h2(#syntax). 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. h2(#Examples). 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