lowel/docker-api-php-sdk

Docker Engine API PHP SDK

1.1.0 2024-06-03 11:59 UTC

This package is auto-updated.

Last update: 2024-10-03 12:53:09 UTC


README

安装

当前库已测试在 docker 1.41 API 版本上!

composer require lowel/docker-api-php-sdk

支持的客户端

SDK 支持

  • 手动 PSR-7 客户端;
  • 手动响应处理器,返回 DTO 对象(看起来像 Lowel\Docker\Response\DTO),而不是 ResponseInterface,并抛出一些 Lowel\Docker\Exceptions 的自定义异常;
  • 基于 Guzzle 库的异步客户端,返回承诺;
  • 异步响应处理器,与手动响应处理器相同,但返回类型是承诺。

您可以使用 Lowel\Docker\ClientFactory 初始化所有客户端。

$clientFactory = new \Lowel\Docker\ClientFactory();

$client = $clientFactory->getClient();
$clientWithHandler = $clientFactory->getClientWithHandler();
$asyncClient = $clientFactory->getAsyncClient();
$asyncClientWithHandler = $clientFactory->getAsyncClientWithHandler();

$client->containerList();
$clientWithHandler->containerInspect('container-name');
$asyncClient->containerStart('container-name');
$asyncClientWithHandler->containerStop('container-name');

$asyncClient->wait();
$asyncClientWithHandler->wait();

配置

您可以通过设置 DOCKER_API_VERSION 全局环境变量来切换默认的 Docker API 版本;

// Client factory use default value '1.41v'
$_ENV['DOCKER_API_VERSION'] = '1.43v'

此外,您系统中应该有 /var/run/docker.sock。这是 Docker socker 的默认路径。