---
name: docker_tui
kind: pipeline
lang: go
domain: infra
version: "1.0.0"
purity: impure
signature: "func main() — TUI fullscreen para gestionar Docker"
description: "Pipeline que compone componentes TUI de DevFactory con comandos Docker para crear una aplicacion de terminal interactiva. Gestiona containers, images, volumes, networks y compose."
tags: [docker, tui, pipeline, infra, bubbletea, devfactory]
uses_functions:
  - new_filtered_list_go_tui
  - new_list_go_tui
  - new_spinner_go_tui
  - new_base_model_go_tui
  - default_styles_go_tui
  - run_fullscreen_go_tui
  - run_cmd_timeout_go_shell
  - docker_list_containers_go_infra
  - docker_start_container_go_infra
  - docker_stop_container_go_infra
  - docker_container_logs_go_infra
  - docker_list_images_go_infra
  - docker_remove_image_go_infra
uses_types:
  - container_go_docker
  - image_go_docker
  - volume_go_docker
  - network_go_docker
  - compose_project_go_docker
  - list_model_go_tui
  - filtered_list_model_go_tui
  - spinner_model_go_tui
  - styles_go_tui
  - base_model_go_tui
  - cmd_result_go_shell
returns: []
returns_optional: false
error_type: "error_go_core"
imports:
  - github.com/charmbracelet/bubbletea
  - github.com/lucasdataproyects/devfactory
params: []
output: "Ejecutable TUI fullscreen que gestiona Docker containers, images, volumes, networks y compose"
tested: false
tests: []
test_file_path: ""
file_path: "apps/docker_tui/main.go"
---

## Ejemplo

```bash
cd apps/docker_tui && go run .
```

## Notas

Pipeline principal del proyecto Docker TUI. Compone funciones de los dominios tui, shell e infra
para crear una aplicacion de terminal con 5 vistas: Containers (start/stop/restart/logs),
Images (list/remove), Volumes (list/remove), Networks (list/remove), Compose (up/down/logs).

Arquitectura Elm (Model-Update-View) con navegacion por tabs y state machines por vista.
