0

我希望通过 Rancher 的 REST API 可以做到这一点。有人知道它是否可能吗?

cat data.txt | docker exec -i my_container sh -c 'cat >/data.txt'

似乎我可以使用这个与 docker exec 交互:

curl -X "POST" "http://123.123.123.123:8080/v2-beta/containers/1i177?action=execute" \
     -H "Cookie: PL=rancher" \
     -H "Content-Type: application/json" \
     -u user:password \
     -d $'{
    "attachStdin": true,
   "attachStdout": true,
    "command": [
        "ls"
], 
"tty": true
}'

这会返回:

url":"ws:\/\/123.123.123.123:8080\/v1\/exec\/"

所以我假设我需要使用 WebSocket 连接到这个?

4

1 回答 1

0

是的,token该响应中也包含作为标头 ( Authorization: Bearer <token>) 或查询参数 ( ?token=<token>)。

您也可能想要tty: false,因为您不太可能是 TTY :-)

于 2016-12-21T22:11:31.680 回答