JSF - Problema com login na EC2

Primeira vez que to perguntando algo aqui, e cheguei nesse ponto pois não tenho mais idéia e não consegui encontrar a resposta.

Fiz um sistema usando Java, Primefaces e Wildfly de servidor. Localmente o sistema roda certinho, faz login e tudo mais. Entretando ao colocar esse sistema via Docker na EC2 da AWS, estou tendo problemas com o login, parece que a pagina não consegue chamar a função de login, já tentei de tudo, trocar anotação, trocar atributo de chamar a função mas nada muda, localmente continua funcionando e na EC2 não loga (esse problema da EC2 acontecia também numa VM local que criei), a EC2 está com todos os acessos liberados no grupo de segurança, firewall também, e para mim não parece ser algo da infraestrutura, e sim do código.

Informação Adicional caso for importante:

Ná minha maquina eu uso Maven 3.9.8 e a versão Java 11.0.24, e no DockerFile estou usando uma imagem com Maven 3.8 e Java 11.0.1.

Vou deixar aqui minha pagina de login e meu bean, se alguem puder ajudar.
_______________________________________________________
Página Xhtml de Login

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:ui="http://xmlns.jcp.org/jsf/facelets"
      xmlns:f="http://xmlns.jcp.org/jsf/core"
      xmlns:p="http://primefaces.org/ui">
<h:head>
   <meta http-equiv="X-UA-Compatible" content="IE=edge" />
   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
   <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/>
   <meta name="apple-mobile-web-app-capable" content="yes" />
   <link rel="icon" href="#{request.contextPath}/resources/favicon.jpg" type="image/jpeg"/>
</h:head>
<style>
   html, body {
      height: 100%;
      margin: 0;
   }
</style>
   <h:body styleClass="loginBody">
      <div>
         <h:form id="loginForm">
            <fieldset class="login-fieldset">

               <div class="login-logo-container">
                  <p:graphicImage name="loginLogo.png" library="images"
                                  styleClass="login-logo"/>
               </div>

               <p:outputLabel value="Username" for = "usrname" styleClass="login-label"/>
               <p:inputText id="usrname" type="text" value="#{loginBean.username}" styleClass="login-input"/>

               <p:outputLabel value="Password" for="pass" styleClass="login-label"/>
               <p:password id="pass" value="#{loginBean.password}" styleClass="login-input"/>

               <p:commandButton value="Login" icon="pi pi-user" action="#{loginBean.login}"
                                styleClass="login-button" update="@form" process="@form"
                                ajax="false"/>
            </fieldset>
         </h:form>
         <h:outputStylesheet library="css" name="style.css"/>
      </div>
   </h:body>
</html>

Bean de Login

@Named("loginBean")
@RequestScoped
public class LoginBean implements Serializable {

    private static final long serialVersionUID = 1L;

    Logger logger = Logger.getLogger(getClass().getName());

    @PersistenceContext(name = "floorConstruction")
    private EntityManager manager;

    @EJB
    private LoginService loginService;

    private String username;
    private String password;

    @PostConstruct
    void init() {
        logger.log(Level.INFO, "LoginBean Started");
    }

    public String login() {

        logger.log(Level.INFO, "user: " + this.username + " pass: " + this.password);

        User user = loginService.checkUser(this.username, this.password);
        if (user == null) {
            logger.log(Level.INFO,"Usuário não encontrado na primeira tentativa.");
            FacesContext.getCurrentInstance().addMessage(null,
                    new FacesMessage(FacesMessage.SEVERITY_ERROR, "Error", "User not found."));
            return null;
        }

        logger.log(Level.INFO,"Usuário encontrado: " + user.getUsername());
        return generateSession(user);
    }

    private String generateSession(User user) {

        FacesContext instance = FacesContext.getCurrentInstance();
        HttpServletRequest request = (HttpServletRequest) instance.getExternalContext().getRequest();
        HttpSession oldSession = request.getSession(false);

        if (oldSession != null) {
            logger.log(Level.INFO,"Invalidando sessão antiga.");
            oldSession.invalidate();
        }

        HttpSession newSession = request.getSession(true);
        logger.log(Level.INFO,"Nova sessão criada com ID: " + newSession.getId());

        List<Role> roles = loginService.getRoleByUser(user.getId());

        UserSessionObject userSession = new UserSessionObject(user.getEmail(), user.getUsername(),
                user.getFirstName(), user.getLastName(), user.getSurname(), roles);

        newSession.setAttribute("user", userSession);
        logger.log(Level.INFO,"Usuário armazenado na sessão: " + userSession.getUsername());

        FacesContext.getCurrentInstance().addMessage(null,
                new FacesMessage(FacesMessage.SEVERITY_INFO, "Sucess", "Welcome" + user.getFirstName() + "."));

        return "/home.xhtml?faces-redirect=true";
    }

    public String logout() {

        FacesContext instance = FacesContext.getCurrentInstance();
        instance.getExternalContext().invalidateSession();

        return "/login.xhtml?faces-redirect=true";
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }
}