import { useState } from "react"; import { useDocker } from "../../hooks/useDocker"; export default function DockerSettings() { const { dockerAvailable, imageExists, checkDocker, checkImage, buildImage } = useDocker(); const [building, setBuilding] = useState(false); const [buildLog, setBuildLog] = useState([]); const [error, setError] = useState(null); const handleBuild = async () => { setBuilding(true); setBuildLog([]); setError(null); try { await buildImage((msg) => { setBuildLog((prev) => [...prev, msg]); }); } catch (e) { setError(String(e)); } finally { setBuilding(false); } }; return (
Docker Status {dockerAvailable === null ? "Checking..." : dockerAvailable ? "Connected" : "Not Available"}
Image {imageExists === null ? "Checking..." : imageExists ? "Built" : "Not Built"}
{buildLog.length > 0 && (
{buildLog.map((line, i) => (
{line}
))}
)} {error &&
{error}
}
); }