Skip to main content

使用 api 启动 n 个 docker 容器

项目描述

管理和运行多个 Tor 容器

如何…

…安装

curl -sSL https://raw.githubusercontent.com/smthnspcl/docktor/master/install.sh | bash
# or
git clone https://github.com/smthnspcl/docktor
cd docktor
sudo python3 setup.py install

…从 cli 中使用

$docktor --help
usage: docktor [-h] [--host HOST] [--port PORT] [-i INSTANCES]
               [--control-password CONTROL_PASSWORD]

optional arguments:
  -h, --help            show this help message and exit
  --host HOST
  --port PORT
  -i INSTANCES, --instances INSTANCES
  --control-password CONTROL_PASSWORD

ex:
$docktor -i 2
# runs 2 tor containers

$curl http://127.0.0.1:1337/api/instances
# should ouput something like this
[
  {
    "id":"64b0cd480f6a9e1653d10556cf6c99138a2607b18f52415b0b60c6b7f75cdc4e",
    "short_id":"64b0cd480f",
    "name":"docktor-0",
    "status":"running",
    "ports":[
      {"8118\/tcp":"33038"},
      {"8123\/tcp":"33037"},
      {"9050\/tcp":"33036"},
      {"9051\/tcp":"33035"}
    ]
  },
  {
    "id":"5c0955a0f20c2b92e8bc2d3adcb663f8142a3878f5ba83657462c0bd4d430ff8",
    "short_id":"5c0955a0f2",
    "name":"docktor-1",
    "status":"running",
    "ports":[
      {"8118\/tcp":"33042"},
      {"8123\/tcp":"33041"},
      {"9050\/tcp":"33040"},
      {"9051\/tcp":"33039"}
    ]
  }
]

# renew ip addresses for all containers
curl http://127.0.0.1:1337/api/renew
# renew ip address for one container
curl http://127.0.0.1:1337/api/renew/docktor-0

…从代码中使用

from docktor import Manager
manager = Manager(2)
manager.start()
manager.wait_until_ready()
print(manager.get_containers())
manager.stop()

注意:

如果您的代码崩溃,您可能需要手动停止容器

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

docktor-0.42.tar.gz (7.7 kB 查看哈希)

已上传 source

内置发行版

docktor-0.42-py3.8.egg (6.9 kB 查看哈希

已上传 3 8

docktor-0.42-py3-none-any.whl (9.1 kB 查看哈希)

已上传 py3