← Back to list

Laboratório WildFly (JBoss) Standalone com 3 instâncias + NGINX Load Balancer no Docker

Mesmo com o avanço de Kubernetes e plataformas gerenciadas, ainda é muito comum encontrar aplicações Java rodando em WildFly/JBoss em modo…

Bruno Lucio · 2026-02-16 10:26 · 0 claps · 1.6 min read
#jboss #labs #hands-on
Open on Medium ↗
Wiki topics: ☁️ · DevOps & Cloud 📊 · Economic Policy

Laboratório WildFly (JBoss) Standalone com 3 instâncias + NGINX Load Balancer no Docker

Mesmo com o avanço de Kubernetes e plataformas gerenciadas, ainda é muito comum encontrar aplicações Java rodando em WildFly/JBoss em modo standalone, com múltiplas instâncias atrás de um load balancer.

Para estudar esse cenário de forma prática, montei um laboratório local usando Docker Compose, simulando uma arquitetura clássica e bastante realista.

🎯 Objetivo

Criar um ambiente com:

  • 3 instâncias WildFly standalone
  • 1 NGINX atuando como Load Balancer
  • Deploy de uma aplicação .war em todas as instâncias
  • Acesso individual ao management console de cada nó
  • Operação via JBoss CLI (deploy/undeploy) dentro dos containers

🧱 Arquitetura do laboratório

O fluxo fica assim:

Cliente -> http://localhost:8080/app/ -> NGINX -> wildfly1/wildfly2/wildfly3

Cada instância WildFly expõe duas portas:

  • 8080 → aplicação
  • 9990 → management console

No host, as portas foram mapeadas assim:

Instância | App | Management — — — — — — | — — | — — — — — wildfly1 | 8081 | 9991 wildfly2 | 8082 | 9992 wildfly3 | 8083 | 9993 nginx-lb | 8080 | -

Dentro da pasta do projeto:

docker compose up -d --build

Verificando os containers:

docker ps

🌍 Acessos

Aplicação via Load Balancer

http://localhost:8080/app/

Acesso direto a cada instância

Management Console por instância

📦 Deploy e Undeploy via JBoss CLI (usando Docker)

Um dos pontos mais importantes do laboratório é operar o WildFly sem depender da UI, usando o CLI diretamente dentro do container.

1) Entrar no container

docker exec -it wildfly1 bash

2) Acessar o JBoss CLI

/opt/jboss/wildfly/bin/jboss-cli.sh --connect

3) Listar deployments

deployment-info

4) Undeploy

undeploy app.war

5) Deploy

Se o WAR estiver dentro do container:

deploy /opt/jboss/wildfly/standalone/deployments/app.war --force

🧪 O que esse laboratório simula na prática?

Esse lab reproduz muito bem ambientes tradicionais onde existem:

  • múltiplas instâncias standalone
  • reverse proxy / load balancer na frente
  • deploys controlados por CLI
  • operação por nó (management isolado)

É um cenário extremamente útil para aprender conceitos de:

  • escalabilidade horizontal
  • troubleshooting de proxy
  • deploy e rollback
  • arquitetura clássica Java EE

✅ Conclusão

Esse laboratório é simples, mas extremamente efetivo para estudar WildFly/JBoss em um cenário realista, com múltiplas instâncias e balanceamento via NGINX — tudo de forma reproduzível e portátil com Docker.


메타데이터
post_id
c4d29c2f2295
slug
laboratório-wildfly-jboss-standalone-com-3-instâncias-nginx-load-balancer-no-docker-c4d29c2f2295
url
https://medium.com/@bruno.sph/laborat%C3%B3rio-wildfly-jboss-standalone-com-3-inst%C3%A2ncias-nginx-load-balancer-no-docker-c4d29c2f2295
canonical_url
https://medium.com/@bruno.sph/laborat%C3%B3rio-wildfly-jboss-standalone-com-3-inst%C3%A2ncias-nginx-load-balancer-no-docker-c4d29c2f2295
author_url
https://medium.com/@bruno.sph
status
ok
fetched_at
2026-06-24 11:06:28