Posso ter um contêiner com wine em um Ubuntu server sem interface gráfica?

Boa noite pessoal.

Conheci sobre docker há poucos dias vendo os vídeos do Dio e achei interessante mas quero ver se ele seria adequado para uma ideia minha.

Vi também o vídeo sobre o distrobox e talvez daí tenha me confundido um pouco.

Eu ia fazer uma lista de perguntas, mas mudei de ideia,.vou colocar apenas uma e depois vou aprendendo com as respostas e quem sabe nem precise perguntar tanto, rs.

Vamos lá:

Eu posso ter um servidor de arquivos com Ubuntu server (sem modo gráfico) e subir um contêiner que tenha uma aplicação gráfica dentro do wine? E assim vou conseguir via VNC acessar visualmente o conteúdo do contêiner?

Se isso for possível, que imagem devo baixar do docker Hub, uma imagem do Ubuntu server?

O Wine não é um conteiner, ele é uma API, ele da acesso a todos os diretórios do sistema para o programa, todos os bloqueios que ocorrer é por parte do kernel Linux e não o Wine.

Sim, entendo…

Mas minha pergunta é se eu posso criar um contêiner que dentro dele tenha a interface gráfica, o wine, o programa que quero abrir pelo wine… e rodar ele em um Ubuntu server sem interface, podendo acessar via VNC.

Bom dia Ricardo!
Olha, teoricamente pode sim…

Afinal quem vai abrir a interface gráfica do aplicativo utilizando o Wine é o próprio VNC.
Já fiz algo semelhante, a diferença é que era uma aplicação nativa do Linux mesmo, sem necessidade de utilizar Wine.

Só não sei lhe dizer a viabilidade uma vez que o Wine não suporta 100% das aplicações Windows.

@MMalyson não é que ele não suporta, o desenvolvimento do wine é dar suporte a todas os software que estejam sendo reportado no winedb e no bugzilla.
O que acontece de algumas aplicacão não rodar é que as vezes uma chamada de sistema ainda não foi implementadas ou foram mas não funcionam corretamente, é por isso que as aplicações mais recente são as que dão mais problema.

Mas desde que os problemas sejam reportadas o problema é corrigido.

Diferente do java que os software são compilados e funções existente no java é usado no wine os programas windows são compilados e chamadas não existentes no wine ainda não implementadas são usadas.

O wine tem a sua propria interface e ele funciona em linha de comando.

Opa!
Isso sim, por isso disse da viabilidade…
Se for alguma aplicação nova é mais fácil usar uma similar do próprio Linux mesmo.

Já tentei usar algumas vezes e digamos que de 10 Apps, 6 ou 7 não eram funcionais…
Então depende muito da aplicação que você vai querer rodar.

Não só pode, como já existem containers com essa finalidade no Docker hub:

https://hub.docker.com/r/scottyhardy/docker-wine/

Dá uma olhadinha se é isso que você procura :slight_smile:

1 curtida

Obrigado pelas respostas.
Vou pesquisar mais e tentar fazer.

Vou seguir a dica do Dio.

Wine no Docker


Wine no LXD


Tens muitas formas…

Olá pessoal, ainda não consegui. Vou atualizar aqui.

Eu tenho uma maquina virtual na Oracle Cloud com ubuntu mas já tinha instalado o LXDE nela.
O que eu fiz então foi parar o servidor gráfico (acho que é isso) e seguir o tutorial do Scotty Hard (sugerido pelo Dio).

Já aproveitei e executei para conectar por RDP (liberei a porta 3389 via linha de comando) usando o comando

./docker-wine --rdp

Mas não obtive sucesso ao acessar, recebo a seguinte mensagem:

RDP  - Docker

O que devo estar errando? Tentei com o ip real da VPS, com 127.0.0.1, com 0.0.0.0.

Obrigado.

Oi Ricardo, acho que você acabou misturando um pouco as coisas.

Se a ideia é fazer um acesso remoto, você não precisa usar esse software ou wine.

Não só você tem acesso via SSH (linha de comando), como tem tecnologias mais propícias para usar com Linux, como VNC.

Se a ideia do acesso era gerenciar o servidor, talvez instalar um painel de controle web seja melhor do que instalar uma interface, e instalar um software para acesso remoto. Isso vai deixar o servidor funcionando mais como um “servidor de verdade”.

Conta melhor pra gente qual é a sua intenção com essa máquina, pode ficar mais fácil de ajudar. :slight_smile:

Abração!

Então, vamos lá.

Eu tenho um site hospedado na hostinger e o usuário do site preenche um formulário que grava algumas informações em um banco de dados.

Numa VPS windows eu rodo um programa proprietário (mas que funciona no Linux com o wine sem problemas) que se conecta com o banco de dados, faz sua rotina interna (gerar uma senha que só pode ser usada no mesmo programa) e salva essa senha no banco para o usuário do site acessar em seguida.

Minha ideia era rodar isso na OCI always free, mas ela é bem limitada, 1 processador e 1 gb de ram. Com isso, minha ideia era rodar o Ubuntu sem interface mas dentro dele ter um contêiner com interface+wine+programa proprietário.

Eu sei que o ideal seria eu gerar essa senha de outra maneira, mas até contratei um freelancer para me ajudar e a senha gerada pelo programa não fica igual se fizermos usando python ou C#. Então eu fico amarrado a ter esse programa rodando e ele ser executado a cada x minutos.

É isso…se ficou alguma dúvida, pode perguntar e eu respondo.

Obrigado!