# Usar contenedores para el desarrollo con Bun


## Requisitos previos

Completa [Containerizar una aplicación Bun](/guides/bun/develop/containerize/).

## Descripción general

En esta sección aprenderás a configurar un entorno de desarrollo para tu aplicación containerizada. Esto incluye:

- Configurar Compose para actualizar automáticamente los servicios en ejecución mientras editas y guardas tu código

## Obtener la aplicación de ejemplo

Clona la aplicación de ejemplo para usarla en esta guía. Abre una terminal, ve al directorio donde quieras trabajar y ejecuta el siguiente comando para clonar el repositorio:

```console
$ git clone https://github.com/dockersamples/bun-docker.git && cd bun-docker
```

## Actualizar servicios automáticamente

Usa Compose Watch para actualizar automáticamente los servicios de Compose en ejecución mientras editas y guardas tu código. Para más detalles sobre Compose Watch, consulta [Usar Compose Watch](/compose/how-tos/file-watch/).

Abre tu archivo `compose.yml` en un IDE o editor de texto y añade las instrucciones de Compose Watch. El siguiente ejemplo muestra cómo añadir Compose Watch a tu archivo `compose.yml`.

```yaml {hl_lines="9-12",linenos=true}
services:
  server:
    image: bun-server
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "3000:3000"
    develop:
      watch:
        - action: rebuild
          path: .
```

Ejecuta el siguiente comando para ejecutar tu aplicación con Compose Watch.

```console
$ docker compose watch
```

Si modificas tu `server.js`, verás los cambios en tiempo real sin volver a compilar la imagen.

Para probarlo, abre el archivo `server.js` en tu editor de texto favorito y cambia el mensaje de `{"Status" : "OK"}` a `{"Status" : "Updated"}`. Guarda el archivo y actualiza el navegador en `http://localhost:3000`. Deberías ver el mensaje actualizado.

Pulsa `ctrl+c` en la terminal para detener la aplicación.

## Resumen

En esta sección también aprendiste a usar Compose Watch para recompilar y ejecutar automáticamente tu contenedor cuando actualizas el código.

Información relacionada:

- [Referencia del archivo Compose](/reference/compose-file/)
- [Watch en el archivo Compose](/compose/how-tos/file-watch/)
- [Compilaciones multi-etapa](/build/building/multi-stage/)

## Próximos pasos

En la siguiente sección verás cómo configurar un pipeline de CI/CD con GitHub Actions.

