Interface: ExtensionVM
Interface: ExtensionVM
Docker Desktop 확장 SDK의 ExtensionVM 인터페이스예요. 확장 VM 안에서 명령을 실행하고 결과를 받아오는 API를 제공해요.
출처: 문서
본문
Interface: ExtensionVM
Since
0.2.0
속성
cli
• Readonly cli: ExtensionCliExtensionCli)
Executes a command in the backend container.
Example: Execute the command ls -l inside the backend container:
await ddClient.extension.vm.cli.exec(
"ls",
["-l"]
);
Streams the output of the command executed in the backend container.
When the extension defines its own compose.yaml file
with multiple containers, the command is executed on the first container defined.
Change the order in which containers are defined to execute commands on another
container.
Example: Spawn the command ls -l inside the backend container:
await ddClient.extension.vm.cli.exec("ls", ["-l"], {
stream: {
onOutput(data): void {
// As we can receive both `stdout` and `stderr`, we wrap them in a JSON object
JSON.stringify(
{
stdout: data.stdout,
stderr: data.stderr,
},
null,
" "
);
},
onError(error: any): void {
console.error(error);
},
onClose(exitCode: number): void {
console.log("onClose with exit code " + exitCode);
},
},
});
Param
Command to execute.
Param
Arguments of the command to execute.
Param
The callback function where to listen from the command output data and errors.
service
• Optional Readonly service: HttpServiceHttpService)