- Add comprehensive health check system with multiple endpoints - Add Prometheus metrics endpoint - Add production logging configurations (5 strategies) - Add complete deployment documentation suite: * QUICKSTART.md - 30-minute deployment guide * DEPLOYMENT_CHECKLIST.md - Printable verification checklist * DEPLOYMENT_WORKFLOW.md - Complete deployment lifecycle * PRODUCTION_DEPLOYMENT.md - Comprehensive technical reference * production-logging.md - Logging configuration guide * ANSIBLE_DEPLOYMENT.md - Infrastructure as Code automation * README.md - Navigation hub * DEPLOYMENT_SUMMARY.md - Executive summary - Add deployment scripts and automation - Add DEPLOYMENT_PLAN.md - Concrete plan for immediate deployment - Update README with production-ready features All production infrastructure is now complete and ready for deployment.
57 lines
1.3 KiB
PHP
57 lines
1.3 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Framework\Process\ValueObjects\Docker;
|
|
|
|
/**
|
|
* Docker Container Information.
|
|
*/
|
|
final readonly class DockerContainer
|
|
{
|
|
public function __construct(
|
|
public string $id,
|
|
public string $name,
|
|
public string $image,
|
|
public string $status,
|
|
public bool $isRunning,
|
|
public ?string $created = null,
|
|
public array $ports = []
|
|
) {
|
|
}
|
|
|
|
/**
|
|
* Erstellt Container aus Docker-Output.
|
|
*/
|
|
public static function fromDockerPs(string $id, string $name, string $image, string $status): self
|
|
{
|
|
$isRunning = str_starts_with(strtolower($status), 'up');
|
|
|
|
return new self(
|
|
id: $id,
|
|
name: $name,
|
|
image: $image,
|
|
status: $status,
|
|
isRunning: $isRunning
|
|
);
|
|
}
|
|
|
|
/**
|
|
* Konvertiert zu Array.
|
|
*
|
|
* @return array<string, mixed>
|
|
*/
|
|
public function toArray(): array
|
|
{
|
|
return [
|
|
'id' => $this->id,
|
|
'name' => $this->name,
|
|
'image' => $this->image,
|
|
'status' => $this->status,
|
|
'is_running' => $this->isRunning,
|
|
'created' => $this->created,
|
|
'ports' => $this->ports,
|
|
];
|
|
}
|
|
}
|