Solution EDSON DEUCHER Postado 24 Julho Solution Compartilhar Postado 24 Julho (editado) Bom dia pessoal. Estou postando apenas para deixar documentado. Estava nessa jornada de fazer funcionar minha aplicação no Docker. Passei por quase todos os problemas postados aqui no fórum kkkkkkkk Porém teve um que quase me fez desistir, o "network subsystem is unusable" ao fazer qualquer comunicação com o SEFAZ. Segui todas as sugestões feitas no fórum, como copiar os .so junto da aplicação, fazer downgrade ou upgrade na versão do OpenSSL, etc., mas sem êxito. Neste momento eu estava usando o Ubuntu 20.04, porque haviam pessoas que fizeram funcionar nele, e o NodeJS 18. Não tinha como eu usar o NodeJS 12, porque meu código já não roda mais nesta versão, e não estava usando o NodeJS 20 porque tinha um package que só estava adapatado até o 18. Depois de muito bater cabeça, não consegui fazer funcionar com essas configurações. Aí pensei, quer saber, vou botar o Ubuntu 24.04, o NodeJS 20, tirar essa package que depende da versão 18 e testar assim para ver. Deu certo! Finalmente pude ser feliz kkkkkkk Vou colocar aqui o Dockerfile, mas não como anexo, pq teve vários posts que não consegui baixar. FROM sitespeedio/node:ubuntu-24-04-nodejs-20.15.1 ENV NODE_ENV=production ENV DISPLAY=:99 WORKDIR /usr/src/app # Instalando as dependências de build para os packages da aplicação RUN apt update && apt install -y --no-install-recommends g++ make cmake python3 # Instalando dependências do ACBrLib RUN echo "deb http://deb.debian.org/debian buster main contrib\n" >> /etc/apt/sources.list && \ apt install -y --no-install-recommends xvfb xauth RUN echo ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true | debconf-set-selections && \ apt install -y perl ttf-mscorefonts-installer openssl libxml2 libgtk2.0-0 && \ ln -s /usr/lib/x86_64-linux-gnu/libxml2.so.2 /usr/lib/libxml2.so # Instalando os packages da aplicação RUN --mount=type=bind,source=package.json,target=package.json \ --mount=type=cache,target=/root/.npm \ npm i --omit=dev # Copiando os arquivos da aplicação para a imagem COPY . . # Esse openssl.cnf está alterado para aceitar legacy algorithms, conforme especificado num post do fórum do ACBr. # https://www.projetoacbr.com.br/forum/topic/75815-acbrnfe-programa-exemplo-para-linux/#comment-489652 # No windows é usado o legacy.dll COPY openssl.cnf /usr/lib/ssl/openssl.cnf # Criando usuário genérico para rodar a aplicação RUN adduser gpsfac # Marcando o usuário como dono da pasta da aplicação RUN chown -R gpsfac /usr/src/app # Rodando a aplicação como non-root user. USER gpsfac EXPOSE 8050 ENTRYPOINT ["bash", "/usr/src/app/run.sh"] # run.sh # Xvfb :99 -screen 0 1280x1024x24 -ac +extension GLX +render -nolisten tcp -nolisten unix &> /usr/src/app/xvfb_warning_dump.txt & \ # node server_bundle.js Editado 24 Julho por EDSON DEUCHER Postei sem querer, ainda faltava adicionar o script run.sh 3 1 Link para o comentário Compartilhar em outros sites More sharing options...
Moderadores Juliomar Marchetti Postado 24 Julho Moderadores Compartilhar Postado 24 Julho Parabéns e obrigado por compartilhar Juliomar Marchetti skype: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Link para o comentário Compartilhar em outros sites More sharing options...
Recommended Posts
Crie uma conta ou entre para comentar
Você precisar ser um membro para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora