Como instalar o Wildfly usando o Painel ICP

Este tutorial mostra como subir o Wildfly usando contêineres Docker de forma simples e organizada, ideal para iniciantes, para isso iremos usar o Painel ICP da Integrator Host.
Neste tutorial, você verá:
✔️ Criar o docker compose
✔️ Configurar um domínio com SSL para acessar o Wildfly (https://example.com).
✔️ Acesse o Console do Wildfly
📌 Passo 1: Vamos criar a nossa pasta de trabalho em /home

📌 Passo 2: Crie um arquivo chamado docker-composer.yml dentro de /home/wildfly com o conteúdo abaixo:
services:
wildfly:
image: bitnami/wildfly:latest # Última versão disponível
container_name: wildfly
ports:
- "8080:8080" # Apps
- "9990:9990" # Console Admin
environment:
- WILDFLY_USERNAME=admin
- WILDFLY_PASSWORD=DCBlkmrBom4BHo4
- WILDFLY_BIND=0.0.0.0
- WILDFLY_MANAGEMENT_BIND_ADDRESS=0.0.0.0
volumes:
- /home/wildfly:/opt/bitnami/wildfly/standalone:Z
- /home/wildfly/init:/docker-entrypoint-init.d:Z
📌 Passo 3: Crie um arquivo chamado 10-fix-binds.sh dentro de /home/wildfly/init/ com o conteúdo abaixo:
#!/bin/bash
set -euo pipefail
CFG="/opt/bitnami/wildfly/standalone/configuration/standalone.xml"
# Se o arquivo ainda não existe, deixe o WildFly criá-lo primeiro
# (os inits rodam após a fase "setup" da Bitnami, então normalmente já existe)
if [ ! -f "$CFG" ]; then
echo "Arquivo $CFG ainda não existe; pulando ajuste de bind (o próximo start deve acertar)."
exit 0
fi
# Força os binds das interfaces "management" e "public" para 0.0.0.0
# Substitui a expressão padrão ${jboss.bind.address.*:127.0.0.1} por valor fixo 0.0.0.0
sed -ri 's#(<interface name="management">.*)<inet-address value="[^"]*".*#\1<inet-address value="0.0.0.0"/>#' "$CFG"
sed -ri 's#(<interface name="public">.*)<inet-address value="[^"]*".*#\1<inet-address value="0.0.0.0"/>#' "$CFG"
echo "Binds ajustados para 0.0.0.0 em $CFG"
📌 Passo 4: De permissão de execução no arquivo 10-fix-binds.sh
sudo chmod +x /home/wildfly/init/10-fix-binds.sh
📌 Passo 5: A pasta /home/wildflly tem que ter permissões 1001:1001

📌 Passo 6: Resultado final deve ser assim:

📌 Passo 7: Subir o nosso Container usando o docker compose criado

Ao finalizar com sucesso:

📌 Passo 8: Nosso container Wildfly executando com sucesso.

Execute o comando abaixo no terminal para liberar o acesso externo:
docker exec -it wildfly /opt/bitnami/wildfly/bin/jboss-cli.sh --connect \
"/interface=management:write-attribute(name=inet-address,value=0.0.0.0), \
/interface=public:write-attribute(name=inet-address,value=0.0.0.0), \
:reload"
📌 Passo 9: Agora vamos criar um domínio com SSL para acessar o Console e o Wilfdfly.
Primeiro vamos criar o domínio para acessar a Wildfly que esta rodando na porta 8080 que foi definida em nosso docker composer.

Resultado:

Vamos agora criar o domínio para acessar o nosso Console que esta rodando na porta 9990 definida no nosso docker composer.

Acesse o terminal e rode o comando abaixo para liberar o acesso HTTPS para o seu domínio:
Lembre-se de alterar para o domínio que foi configurado.
docker exec -it wildfly /opt/bitnami/wildfly/bin/jboss-cli.sh --connect \
"/core-service=management/management-interface=http-interface:write-attribute(name=allowed-origins,value=[\"http://console.panel-icp.integrator.host\",\"https://console.panel-icp.integrator.host\"]), :reload"
Resultado:

Após logar:
WILDFLY_USERNAME=admin
WILDFLY_PASSWORD=DCBlkmrBom4BHo4

Até a próxima =)