File size: 822 Bytes
a2ec119
65d3b67
 
a2ec119
65d3b67
 
 
 
 
fd48142
 
65d3b67
 
 
 
 
 
a2ec119
 
 
 
 
 
 
 
 
 
 
 
 
65d3b67
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
from fastapi import FastAPI
import docker
import dotenv
from routers.deploy import router as deploy_router
from routers.controls import router as controls_router
from routers.logs import router as logs_router

# Load environment variables
dotenv.load_dotenv()

app = FastAPI()
app.include_router(controls_router, prefix="/controls")
app.include_router(logs_router, prefix="/logs")
app.include_router(deploy_router, prefix="/deploy")

client = docker.from_env()

@app.get("/")
def dashboard():
    containers = client.containers.list(all=True)
    container_list = [
        {
            "id": container.id,
            "name": container.name,
            "status": container.status,
            "image": container.image.tags
        }
        for container in containers
    ]
    return {"containers": container_list}