Skip to content

vitoriadeveloper/docker-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 Docker Manager API

Este projeto é uma API REST desenvolvida em Spring Boot para gerenciar containers e imagens Docker utilizando a biblioteca docker-java.

Com esta API, você pode listar, criar, iniciar, parar e remover containers, além de gerenciar imagens Docker.

🛠 Tecnologias

  • Java 21
  • Spring Boot 3.5.5
  • Docker Java 3.6.0
  • HttpClient5
  • JNA
  • Maven
  • Lombok

⚙️ Configuração

# Linux
docker.socket.path=unix:///var/run/docker.sock

# Windows (Docker Desktop)
docker.socket.path=npipe:////./pipe/docker_engine

# TCP (se configurado no Docker)
# docker.socket.path=tcp://localhost:2375

📦 Endpoints

🔹 Containers

Base URL: /api/containers

1. Listar containers

GET /api/containers?all=true
  • Parâmetros

all (boolean, default = true): se true, lista todos os containers (inclusive os parados).

  • Resposta
[
  {
    "Id": "e90e34656806",
    "Image": "nginx:latest",
    "Status": "Up 5 minutes",
    "Names": ["/nginx-container"]
  }
]

2. Criar container

POST /api/containers?imageName=nginx:latest
  • Parâmetros

imageName nome da imagem a ser usada para criar o container.

3. Iniciar container

POST /api/containers/{id}/start

4. Parar container

POST /api/containers/{id}/stop

5. Remover container

DELETE /api/containers/{id}

🔹 Imagens Base URL:/api/images

1. Listar imagens

GET /api/images
  • Resposta
[
  {
    "Id": "sha256:abcd1234",
    "RepoTags": ["nginx:latest"],
    "Size": 133700000
  }
]

2. Filtrar imagens

GET /api/images/filter?filterName=nginx
  • Resposta
[
  {
    "Id": "sha256:abcd1234",
    "RepoTags": ["nginx:latest"]
  }
]

▶️ Executando o projeto

Clone o repositório:

git clone https://github.com/seu-usuario/docker-manager.git
cd docker-manager

Compile e rode:

mvn spring-boot:run

Acesse a API em:

http://localhost:8080/api

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages