DeepSeek Harness (DSH) adopts a plugin-based architecture. During local development or remote management of Docker containers and the MCP (Model Context Protocol) Gateway, complex CLI commands are usually required. The dsh-docker plugin provides a sidebar panel for the DSH Web interface, unifying Docker container operations and MCP Gateway deployment management within the Web UI. It supports seamless switching between local and SSH remote targets, addressing the operational challenges of managing Docker resources in a Web environment.

Features

Multi-Target Management

Supports switching between “Local CLI” and “SSH Remote.” After switching, all operations (MCP, containers, images) are performed against the current target.

Docker MCP Management

Supports deploying/removing MCP servers, searching the official Catalog, starting/stopping/restarting the MCP Gateway, and custom deployment (remote HTTPS or local image).

Container and Image Management

Supports listing, starting/stopping, restarting, deleting, logs, details, interactive terminal (SSH target only), creating containers, and pulling/building/importing images.

Security Design

SSH credentials are encrypted and stored using Windows DPAPI; only the current user can decrypt them. The panel HTTP service only allows loopback access. It includes command injection protection via a whitelist.

Engineering Features

No build required. Both Host and Client are pure ESM, with zero dependencies on the Client side.

Installation

Use the dsh CLI to install the plugin.

# <repo-path> 为克隆/解压后的插件目录
dsh plugin --profile web add link:<repo-path>
dsh web

After installation, a “Docker” entry will appear in the sidebar.

Configuration

The configuration file is located at ~/.dsh/dsh-docker/config. (or via environment variables). Configuration priority is: environment variables > config.json > cordis inline configuration.

SSH credentials support password or key. The password is encrypted using DPAPI.

Environment Variables:
* MCPGW_SSH_HOST
* MCPGW_SSH_PORT (default 22)
* MCPGW_SSH_USER
* MCPGW_SSH_PWD
* MCPGW_SSH_AUTH (password or key)
* MCPGW_SSH_KEY
* MCPGW_SSH_PASSPHRASE

Usage

Switching Targets

Select “Local” or “SSH Remote” at the top of the panel.

MCP Management

Search the Catalog in the MCP tab and deploy with one click.

Container Operations

Create a container in the container tab and configure ports/environment variables. Use “Terminal” to interact on an SSH target.

Image Management

Select multiple images in the image tab and delete them in bulk.

Notes

  • SSH credentials are encrypted with Windows DPAPI; only the current user can decrypt them.
  • The panel HTTP service only allows loopback access (127.0.0.1 / ::1).
  • High-risk operations (stop/restart/delete) require a second confirmation.
  • The code repository does not include credential examples (e.g. 203.0.113.10).
  • License: Apache-2.0.