Project

General

Profile

Actions

Feature #17170

closed

Shell into container proof of concept

Added by Peter Amstutz almost 4 years ago. Updated over 3 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
Crunch
Target version:
Story points:
-
Release relationship:
Auto

Description

Initial proof of concept: go program that runs ssh server that runs bash. Confirm that connecting with ssh gets a working pseudoterminal and that signals and control characters (e.g. SIGWINCH, backspace) work correctly. Fullscreen interactive programs like less should work.

https://godoc.org/golang.org/x/crypto/ssh#example-NewServerConn

Minimum viable feature, once we've confirm the proof of concept:

  • Crunch-run updates the container record with the IP address and port where it is listening (need to add new database column?)
  • Connect to crunch-run with ssh
  • Accept a token for password authentication
  • run "docker exec -ti" on the container with stdin/stdout/stderr connected.

Subtasks 1 (0 open1 closed)

Task #17238: Review 17170-container-shellResolvedTom Clegg01/14/2021Actions

Related issues

Related to Arvados Epics - Idea #17103: Developer shell inside running containerResolved01/01/202103/31/2021Actions
Related to Arvados - Feature #17206: crunch-run reverse proxies HTTP requests to containerNewActions
Related to Arvados Epics - Idea #17207: External access to web services running in containersNewActions
Related to Arvados - Idea #17284: [controller] Redact internal RailsAPI URLs from error messages returned to callerResolvedTom Clegg04/26/2021Actions
Related to Arvados - Bug #17398: [crunch-dispatch-local] [crunch-run] error starting gateway server: missing port in addressResolvedTom Clegg02/18/2021Actions
Actions

Also available in: Atom PDF