fandom/docker-php

PHP client for Docker API generated from Docker's OpenAPI spec

dev-main 2022-05-31 20:37 UTC

This package is not auto-updated.

Last update: 2024-05-01 06:21:13 UTC


README

This is an autogenerated PHP client for the Docker Engine API, built using the Jane generator.

It aims to replace the abandoned docker-php/docker-php package.

Usage

Pass a configured PSR-18 HTTP client to the main entry point. Example for a local Docker instance running on a Unix-like OS, using php-http/socket-client:

$httpClient = new Http\Client\Socket\Client( [
    'remote_socket' => 'unix:///var/run/docker.sock'
] );
$pluginClientFactory = new \Http\Client\Common\PluginClientFactory();
$httpClient = $pluginClientFactory->createClient( $httpClient, [
    new \Http\Client\Common\Plugin\ContentLengthPlugin(),
    new \Http\Client\Common\Plugin\DecoderPlugin(),
    new \Http\Client\Common\Plugin\AddHostPlugin( new \GuzzleHttp\Psr7\Uri( 'http://localhost' ) )
] );

$docker = Docker\Api\Client::create( $httpClient );

Updating the code

Fetch the new OpenAPI specification YAML from Docker API docs and run composer generate.

License

Copyright 2020 Fandom, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.