polkovnik-z / php-docker-client
3.41.3
2022-09-27 17:54 UTC
Requires
- php: >=7.1.3
- ext-curl: *
- ext-json: *
- symfony/http-client: >=4.3.0
Requires (Dev)
- pcov/clobber: ^2.0
- php-coveralls/php-coveralls: ^2.5
- phpunit/phpunit: ^9.5
README
PHP的Docker API驱动程序。
Docker配置
为了能够连接,Docker引擎API必须在本地端口上暴露。
1. 编辑默认位于 /lib/systemd/system/docker.service
的 docker.service
从这
# /lib/systemd/system/docker.service
...
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
...
到这
# /lib/systemd/system/docker.service
...
ExecStart=/usr/bin/dockerd
...
2. 编辑 /etc/docker/daemon.json
以在 127.0.0.1:2375
暴露Docker API
将 hosts
添加到json文件中,如下所示
{ ... "hosts": ["fd://", "tcp://127.0.0.1:2375"] ... }
3. 完全重启Docker
systemctl daemon-reload systemctl restart docker service docker restart
安装
composer require ibra-akv/php-docker-client
使用方法
初始化客户端
use IterativeCode\Component\DockerClient\DockerClient; $docker = new DockerClient([ 'local_endpoint' => 'https://:2375/v1.41', # Optional (default: https://:2375) ]);
检查镜像是否存在
$exists = $docker->imageExists('436aed837ea2'); # true | false $details = $docker->inspectImage('436aedXXXXXX'); # array | @throws Exception