Não é provável que seja possível desta forma
O arquivo de soquete X11 é somente para conexão local e só estará acessível em sua estação de trabalho. Daí o seu TCP.
Como você usou o SSH com X11Forwarding para SSH no seu servidor host-a, ele criou uma conexão tcp entre sua estação de trabalho e o servidor. Esta é a tela TCP X11 'localhost: 10' quando você está no seu servidor. E o cliente SSH em sua estação de trabalho encaminhará o tráfego de lá para o seu arquivo de soquete .X11 unix. Não tenho certeza de onde a exibição localhost: 11 está vindo, mas também está relacionada ao encaminhamento SSH. Você fez apenas um salto SSH, ou dois?
Você pode ter mais sucesso, se você ativar a escuta TCP diretamente no servidor X da sua estação de trabalho (remover '-nolisten tcp' sinalizadores e talvez precise adicionar '-listen tcp') e informar ao contêiner docker para usar sua exibição da estação de trabalho diretamente
docker run .... -e DISPLAY=<workstation-ip-address>:0
No entanto, você também provavelmente terá erros de 'xauth'
Você poderia usar o comando xauth para exportar um token de autenticação para seu diretório pessoal no servidor e montá-lo como um volume docker para fornecer ao contêiner acesso ao token e também definir a variável de ambiente XAUTHORITY no comando docker , para esse arquivo xauth exportado, ou então use xauth dentro do contêiner para importar o token.
Eu tenho um velho contêiner de amostra do docker em algum lugar no gitbub que faz isso para executar o Azureus. Vou ver se consigo encontrar o link
Às vezes é muito mais fácil adicionar um servidor VNC ao contêiner, iniciar seu aplicativo Java em uma sessão vnc no contêiner e usar o vnc para se conectar a ele a partir da estação de trabalho.
ou no host do docker, é possível executar um servidor vnc e usar o docker '-net host' para compartilhar a pilha de rede do host e usar DISPLAY =: 5900 no contêiner e conectar-se ao host de exibição VNC-a: 0 da sua estação de trabalho. Isso fica por aí precisando adicionar pacotes VNC ao seu container