Giter Club home page Giter Club logo

sei-docker's People

Contributors

higodf avatar marlinhares avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

sei-docker's Issues

Erro app-atualizador

Estou subindo o sistema com a infra completa usando https, porem estou com um problema, se preciso parar os containers e depois iniciá-los com docker start ou restart eu recebo o seguinte log do app-atualizador

ERROR 1062 (23000) at line 1: Duplicate entry 'PMI' for key 'ak_orgao_sigla'

Com isso o container da aplicação não sobe, o mesmo acontece se utilizo o make clear e rodo o make run
depois de configurado se o container parar estou tento que zerar os volumes para rodar novamente o sistema.

A principio parece que o app-atualizador tenta forçar um insert com a mesma informação que já está no banco feita na configuração inicial.

Como solução tentei comentar os updates do banco nos arquivos entrypoint.sh e entrypoint-atualizador.sh na pasta scripts-e-automatizadores mais o problema continua.

Pode me ajudar a resolver?

Erro envio de email ao criar usuário externo

Olá @marlinhares

Como eu configuro as variáveis do phpmailer no projeto?

no env está assim

export APP_MAIL_TIPO=1 #1 = sendmail (neste caso nao eh necessario configurar os atributos abaixo), 2 = SMTP
export APP_MAIL_SERVIDOR=smtp.gmail.com
export APP_MAIL_PORTA=587
export APP_MAIL_CODIFICACAO=8bit #8bit, 7bit, binary, base64, quoted-printable
export APP_MAIL_MAXDESTINATARIOS=999 #numero maximo de destinatarios por mensagem
export APP_MAIL_MAXTAMANHOANEXOSMB=999 #tamanho maximo dos anexos em Mb por mensagem
export APP_MAIL_SEGURANCA=TLS #/TLS, SSL ou vazio
export APP_MAIL_AUTENTICAR=true # false se true entao informar Usuario e Senha
export APP_MAIL_USUARIO=******[meu email]
export APP_MAIL_SENHA=*****[minha senha]
export APP_MAIL_PROTEGIDO=

só que eu recebo o seguinte erro depois de tentar criar o usuário externo

image

pode me auxiliar nessa situação?

Problema de permissão ao rodar o SEI

Olá, tive um problema de permissão para rodar o SEI e resolvi colocando o
&& chmod -R 755 /opt/
na linha abaixo, dentro do Makefile.

docker run --rm -v $(LOCALIZACAO_FONTES_SEI):/source -v $(VOLUME_FONTES):/opt -w /source alpine sh -c "cp -R infra sei sip /opt/ && chmod -R 755 /opt/"

Por que não usar dnf?

Problema

Não é boa prática, como é contra-indicado e de nenhuma vantagem, registrar arquivos binários usando git. No caso desses pacotes rpm, basta instalá-los usando dnf

ADD https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/msttcore-fonts-2.0-3.noarch.rpm \
https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm \
https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm \
https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm \
https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/uploadprogress.tgz /sei/instaladores/
#https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/libsodium-1.0.18-stable.tar.gz /sei/instaladores/

Solução

Com o dnf, é possível instalar pacotes com versões especificas, não somente a mais atual.

Exemplo de comando:

You can install using a specific name-version as described in the man page:
dnf install tito-0.5.6-1.fc22

Extraído de
https://unix.stackexchange.com/questions/266888/can-i-force-dnf-to-install-an-old-version-of-a-package

Exemplo em DockerFile

FROM centos:8

LABEL maintainer="[email protected]"
RUN dnf update -y
RUN dnf upgrade -y
RUN dnf install epel-release -y
RUN dnf install nginx -y
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]

Extraído de
https://www.cyberithub.com/how-to-build-docker-image-from-dockerfile-in-centos-8-example/#Step_2_Write_Your_Docker_File

Possibilidade de rodar o SEI em portas diferentes da 80 e 443

Bom dia @marlinhares ! Tudo bem?

Estamos implementando o SEI na Prefeitura de Itaboraí junto a equipe do Jean e do Diogo e estamos com algumas dúvidas sobre o funcionamento da infraestrutura da aplicação.

O primeiro questionamento é: Seria possível subir uma infra do sei completa em portas diferentes da 80 e 443? E complementando a pergunta, a porta 80 e 443 só é utilizada como padrão por conta do balanceador?

Estamos subindo a aplicação em nosso host, mas temos o apache como servidor web. Seria possível subir um SEI Completo com apache no host?

Instanciar/Alinhar Início do Projeto

Instanciar projeto publico
Alinhar com chefia:

primeira milestone
readme inicial
nome para o projeto
solicitar divulgação para os orgaos com SEI4
solicitar fomentação para pessoal de infra contribuir nas issues do projeto solicitando requisitos e tb ajuda para codificar

erro em /opt/sei/config

creio que essa pasta estar vinculada ao volume
logs retorna um erro: "cp: cannot create regular file '/opt/sei/config/': Not a directory"

ao entrar no container, a pasta /opt/ não tem os arquivos requeridos a seguir:
na linha 83 do arquivo: containeres/app/files/scripts-e-automatizadores/entrypoint-atualizador.sh
e tbm
na linha 81 do arquivo : containeres/app/files/scripts-e-automatizadores/entrypoint.sh

algum erro não add os mesmos para a pasta.

Bug. Erro de sequence

ao subir o projeto e imediatamente der um clear. Ao subir novamente e tentar logar da erro de sequence

Migração do SEI para outro host.

Estou tentando migrar o sei para outro host, porem quando restauro o backup das imagens e dos volumes o OpenLDAP não é reconhecido pelo sei e pelo sip e não me retorna log de erro quando uso o make logs, com isso não consigo logar com os usuários, quando desligo o mesmo consigo logar somento no Orgão de ID 0 com o usuário teste(como o previsto), porem nos outros orgãos criados me retorna mensagem de erro - "falha de conexão com o servidor de permissões"
vou deixar a baixo o processo que estou usando para fazer os backups e restauração das imagens e volumes.

1.Docker volumes backup

docker run --rm -v local-arquivosexternos-storage:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-arquivosexternos-storage.tar.gz /data
docker run --rm -v local-certs-storage:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-certs-storage.tar.gz /data
docker run --rm -v local-controlador-instalacao-storage:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-controlador-instalacao-storage.tar.gz /data
docker run --rm -v local-fontes-storage:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-fontes-storage.tar.gz /data
docker run --rm -v local-openldap-db-storage:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-openldap-db-storage.tar.gz /data
docker run --rm -v local-storage-db:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-storage-db.tar.gz /data
docker run --rm -v local-volume-solr:/data -v $(pwd):/backup ubuntu tar czvf /backup/local-volume-solr.tar.gz /data

2 .Docker restauração volumes backup

docker run --rm -v local-arquivosexternos-storage:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-arquivosexternos-storage.tar.gz
docker run --rm -v local-certs-storage:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-certs-storage.tar.gz
docker run --rm -v local-controlador-instalacao-storage:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-controlador-instalacao-storage.tar.gz
docker run --rm -v local-fontes-storage:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-fontes-storage.tar.gz
docker run --rm -v local-openldap-db-storage:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-openldap-db-storage.tar.gz
docker run --rm -v local-storage-db:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-storage-db.tar.gz
docker run --rm -v local-volume-solr:/data -v $(pwd):/backup ubuntu tar xzvf /backup/local-volume-solr.tar.gz

3.salvando imagens docker

docker save processoeletronico/sei4-app memcached busybox dockette/adminer processoeletronico/sei4-haproxydc processoeletronico/sei4-phpmemcachedadmin1.2.2 processoeletronico/sei4-osixialdap1.2.2 processoeletronico/sei4-mysql5.7 processoeletronico/vagrant-sei4_jod processoeletronico/sei4-solr8.2.0 osixia/phpldapadmin -o imagens-sei.tar

4.Restaurando imagens
docker load -i imagens-sei.tar

Tem algo que possa ser feito para me auxiliar?

Uso do opcache e opcache.preload em produção

Poderiamos investigar o ganho de performance com uso do opcache e o preload agora que o SEI usa o PHP 7.4.

https://wiki.php.net/rfc/preload

Para ambientes de testes/desenvolvimento pode trazer problemas pois qualquer alteração de código pode necessitar de restart do servidor para fazer novo preload e pode não ser interessante gastar esse tempo de preload de todo o sistema só devido a uma pequena alteração do código. Mas para ambientes de produção esse tempo gasto pode ser irrisório para a quantidade de acessos/alteração do código.

Comparação e explicação com outro projeto https://www.cloudways.com/blog/integrate-php-opcache/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.