├── .gitignore ├── README.md ├── containers ├── Makefile ├── README.md ├── app-php8 │ ├── app-base-php8 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── ca-certIN.pem │ │ │ ├── copy-packages.sh │ │ │ └── install.sh │ ├── app-ci-php8-agendador │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── conf │ │ │ ├── mod-pen │ │ │ │ └── supervisor.ini.template │ │ │ └── supervisord.conf │ │ │ ├── install.sh │ │ │ └── scripts-e-automatizadores │ │ │ └── entrypoint-agendador.sh │ ├── app-ci-php8 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── conf │ │ │ ├── ConfiguracaoSEI.php │ │ │ ├── ConfiguracaoSip.php │ │ │ ├── sei.conf │ │ │ └── sei.ini │ │ │ ├── install.sh │ │ │ └── scripts-e-automatizadores │ │ │ ├── clone-modules.sh │ │ │ ├── entrypoint-atualizador.sh │ │ │ ├── entrypoint.sh │ │ │ ├── misc │ │ │ ├── cadastrarMultiorgao.php │ │ │ └── enableservicePD.php │ │ │ ├── modulos │ │ │ ├── mod-sei-estatisticas │ │ │ │ └── sei_gov_configurar_ambiente.php │ │ │ ├── mod-sei-incom │ │ │ │ └── mod-sei-incom.php │ │ │ ├── mod-sei-pen │ │ │ │ └── mod-sei-pen.sh │ │ │ └── mod-sei-resposta │ │ │ │ └── mod-sei-resposta.php │ │ │ ├── openldap │ │ │ ├── sip-config-openldap-desligar.php │ │ │ └── sip-config-openldap.php │ │ │ └── remi │ │ │ └── libzip │ │ │ ├── lib64 │ │ │ ├── libzip.so.5 │ │ │ └── libzip.so.5.5 │ │ │ └── share │ │ │ └── licenses │ │ │ └── remi-libzip │ │ │ └── LICENSE │ └── app-dev-php8 │ │ ├── Dockerfile │ │ └── assets │ │ ├── conf │ │ ├── cron.conf │ │ ├── deflate.conf │ │ ├── info.php │ │ ├── sei.conf │ │ ├── sei.ini │ │ └── xdebug.ini │ │ ├── install.sh │ │ └── scripts-e-automatizadores │ │ ├── ConfiguracaoSEI.php │ │ ├── ConfiguracaoSip.old.php │ │ ├── ConfiguracaoSip.php │ │ └── command.sh ├── app │ ├── app-base │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── ca-certIN.pem │ │ │ ├── copy-packages.sh │ │ │ └── install.sh │ ├── app-ci-agendador │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── conf │ │ │ ├── mod-pen │ │ │ │ └── supervisor.ini.template │ │ │ └── supervisord.conf │ │ │ ├── install.sh │ │ │ └── scripts-e-automatizadores │ │ │ └── entrypoint-agendador.sh │ ├── app-ci │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── conf │ │ │ ├── ConfiguracaoSEI.php │ │ │ ├── ConfiguracaoSip.php │ │ │ ├── sei.conf │ │ │ └── sei.ini │ │ │ ├── install.sh │ │ │ └── scripts-e-automatizadores │ │ │ ├── clone-modules.sh │ │ │ ├── entrypoint-atualizador.sh │ │ │ ├── entrypoint.sh │ │ │ ├── misc │ │ │ ├── cadastrarMultiorgao.php │ │ │ └── enableservicePD.php │ │ │ ├── modulos │ │ │ ├── mod-sei-estatisticas │ │ │ │ └── sei_gov_configurar_ambiente.php │ │ │ ├── mod-sei-incom │ │ │ │ └── mod-sei-incom.php │ │ │ ├── mod-sei-pen │ │ │ │ └── mod-sei-pen.sh │ │ │ └── mod-sei-resposta │ │ │ │ └── mod-sei-resposta.php │ │ │ └── openldap │ │ │ ├── sip-config-openldap-desligar.php │ │ │ └── sip-config-openldap.php │ ├── app-dev │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── conf │ │ │ ├── cron.conf │ │ │ ├── deflate.conf │ │ │ ├── info.php │ │ │ ├── sei.conf │ │ │ ├── sei.ini │ │ │ └── xdebug.ini │ │ │ ├── install.sh │ │ │ └── scripts-e-automatizadores │ │ │ ├── ConfiguracaoSEI.php │ │ │ ├── ConfiguracaoSip.php │ │ │ └── command.sh │ └── app-prd │ │ └── comminganytime.txt ├── base-centos │ └── Dockerfile ├── base-rocky93 │ └── Dockerfile ├── databases │ ├── mariadb-base │ │ └── Dockerfile │ ├── mariadb-sei40 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── entrypoint.sh │ │ │ ├── my.cnf │ │ │ ├── pos-install.sql │ │ │ └── pre-install.sql │ ├── mariadb-sei41 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── entrypoint.sh │ │ │ ├── my.cnf │ │ │ ├── pos-install.sql │ │ │ └── pre-install.sql │ ├── mariadb-sei50 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── entrypoint.sh │ │ │ ├── my.cnf │ │ │ ├── pos-install.sql │ │ │ └── pre-install.sql │ ├── mysql8-base │ │ └── Dockerfile │ ├── mysql8-sei41 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── entrypoint.sh │ │ │ ├── my.cnf │ │ │ ├── pos-install.sql │ │ │ └── pre-install.sql │ ├── mysql8-sei50 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── entrypoint.sh │ │ │ ├── my.cnf │ │ │ ├── pos-install.sql │ │ │ └── pre-install.sql │ ├── oracle-base │ │ └── Dockerfile │ ├── oracle-sei40 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── install.sh │ │ │ ├── pre-install.sql │ │ │ ├── sei-config.sql │ │ │ └── sip-config.sql │ ├── oracle-sei41 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── install.sh │ │ │ ├── pre-install.sql │ │ │ ├── sei-config.sql │ │ │ └── sip-config.sql │ ├── oracle-sei50 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── install.sh │ │ │ ├── pre-install.sql │ │ │ ├── sei-config.sql │ │ │ └── sip-config.sql │ ├── postgres-base │ │ └── Dockerfile │ ├── postgres-sei40 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── pos-install.sql │ │ │ ├── postgres.conf │ │ │ └── pre-install.sql │ ├── postgres-sei41 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── pos-install.sql │ │ │ ├── postgres.conf │ │ │ └── pre-install.sql │ ├── postgres-sei50 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── pos-install.sql │ │ │ ├── postgres.conf │ │ │ └── pre-install.sql │ ├── sqlserver-base │ │ └── Dockerfile │ ├── sqlserver-sei40 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── install.sh │ │ │ └── restore.sql │ ├── sqlserver-sei41 │ │ ├── Dockerfile │ │ └── assets │ │ │ ├── install.sh │ │ │ └── restore.sql │ └── sqlserver-sei50 │ │ ├── Dockerfile │ │ └── assets │ │ ├── install.sh │ │ └── restore.sql ├── dbadminer │ └── Dockerfile ├── envcontainers.env.modelo ├── haproxy │ ├── haproxy-base │ │ └── Dockerfile │ └── haproxy │ │ ├── Dockerfile │ │ └── files │ │ └── cert0.pem ├── jod │ ├── Dockerfile │ └── assets │ │ ├── entrypoint.sh │ │ └── install.sh ├── jod4.4.8 │ ├── Dockerfile │ └── assets │ │ └── application.yaml ├── mailcatcher │ └── Dockerfile ├── memcached │ └── Dockerfile ├── openldap │ ├── openldap-base │ │ └── Dockerfile │ └── openldap │ │ ├── Dockerfile │ │ └── files │ │ ├── 50-grupo.ldif │ │ └── 51-usuario.ldif ├── phpldapadmin │ └── Dockerfile ├── phpmemcachedadmin │ ├── phpmemcachedadmin-base │ │ └── Dockerfile │ └── phpmemcachedadmin │ │ ├── Dockerfile │ │ ├── Memcache.php │ │ └── start.sh ├── solr-9.4.0 │ ├── Dockerfile │ └── assets │ │ ├── command.sh │ │ ├── install.sh │ │ └── solr9.4.0sei │ │ ├── log4j.properties │ │ ├── security.json │ │ ├── sei-cores-9.4.0 │ │ ├── sei-bases-conhecimento │ │ │ ├── conf │ │ │ │ ├── schema.xml │ │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ ├── sei-protocolos │ │ │ ├── conf │ │ │ │ ├── schema.xml │ │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ └── sei-publicacoes │ │ │ ├── conf │ │ │ ├── schema.xml │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ ├── sei-solr-9.4.0.sh │ │ └── solr.service ├── solr-9.6.1 │ ├── Dockerfile │ └── assets │ │ ├── command.sh │ │ ├── install.sh │ │ └── solr9.6.1sei │ │ ├── log4j.properties │ │ ├── security.json │ │ ├── sei-cores-9.6.1 │ │ ├── sei-bases-conhecimento │ │ │ ├── conf │ │ │ │ ├── schema.xml │ │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ ├── sei-protocolos │ │ │ ├── conf │ │ │ │ ├── schema.xml │ │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ └── sei-publicacoes │ │ │ ├── conf │ │ │ ├── schema.xml │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ ├── sei-solr-9.6.1.sh │ │ └── solr.service ├── solr │ ├── Dockerfile │ └── assets │ │ ├── command.sh │ │ ├── install.sh │ │ └── solr8sei │ │ ├── log4j.properties │ │ ├── sei-cores-8.2.0 │ │ ├── sei-bases-conhecimento │ │ │ ├── conf │ │ │ │ ├── schema.xml │ │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ ├── sei-protocolos │ │ │ ├── conf │ │ │ │ ├── schema.xml │ │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ └── sei-publicacoes │ │ │ ├── conf │ │ │ ├── schema.xml │ │ │ └── solrconfig.xml │ │ │ └── core.properties │ │ ├── sei-solr-8.2.0.sh │ │ └── solr.service ├── tests │ ├── Makefile │ └── envcontainers-test.env.modelo └── traefik │ ├── traefik-base │ └── Dockerfile │ └── traefik │ ├── Dockerfile │ └── conf.yml ├── dev ├── Makefile ├── README.md ├── docker-compose.yml ├── envs │ ├── env-mysql-sei4.env │ ├── env-mysql-sei5.env │ ├── env-oracle-sei4.env │ ├── env-oracle-sei5.env │ ├── env-postgres-sei4.env │ ├── env-postgres-sei5.env │ ├── env-sqlserver-sei4.env │ └── env-sqlserver-sei5.env └── tests │ ├── Makefile │ └── Selenium │ └── PythonExported │ ├── test_suiteBasics.py │ └── teste.pdf └── infra ├── Makefile ├── README.md ├── certificado.pem ├── docs ├── Instrucoes.md ├── README.md ├── VideoTutoriais.md └── duploSEI │ └── duplosei.md ├── envlocal-example-mysql-sei4.env ├── envlocal-example-mysql-sei5.env ├── envlocal-example-oracle-sei4.env ├── envlocal-example-oracle-sei5.env ├── envlocal-example-postgres-sei4.env ├── envlocal-example-postgres-sei5.env ├── envlocal-example-sqlserver-sei4.env ├── envlocal-example-sqlserver-sei5.env ├── envlocal.env ├── generatebase64.sh ├── jenkins └── comminganytime.txt ├── orquestrators ├── docker-compose │ └── docker-compose-template.yml ├── rancher-cattle │ └── comminganytime.txt └── rancher-kubernetes │ ├── templates │ ├── configmaps-template.yaml │ ├── deploys-svc-template.yaml │ ├── ingress-template.yaml │ ├── jobs-template.yaml │ ├── pvc-template.yaml │ ├── secrets-template.yaml │ └── statefullsets-template.yaml │ └── topublish │ └── .gitkeep └── tests ├── Makefile ├── README.md ├── Selenium ├── IDE │ └── SEI4-Docker.side └── PythonExported │ ├── test_suiteBasics-original.py │ ├── test_suiteBasics.py │ └── teste.pdf ├── test-envlocal-completa.env ├── test-envlocal-default-http.env ├── test-envlocal-reduzida-http.env └── test-envlocal-reduzida.env /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | containers/envcontainers.env 3 | infra/orquestrators/docker-compose/docker-compose.yml 4 | infra/orquestrators/docker-compose/docker-compose.yml-e 5 | infra/orquestrators/rancher-kubernetes/topublish/configmaps.yaml* 6 | infra/orquestrators/rancher-kubernetes/topublish/deploys-svc.yaml* 7 | infra/orquestrators/rancher-kubernetes/topublish/ingress.yaml* 8 | infra/orquestrators/rancher-kubernetes/topublish/jobs.yaml* 9 | infra/orquestrators/rancher-kubernetes/topublish/pvc.yaml* 10 | infra/orquestrators/rancher-kubernetes/topublish/secrets.yaml* 11 | infra/orquestrators/rancher-kubernetes/topublish/statefullsets.yaml* 12 | infra/tests/Selenium/PythonExported/__pycache__ 13 | infra/tests/Selenium/PythonExported/resultado.xml 14 | infra/tests/Selenium/PythonExported/test_suiteBasics-executar.py 15 | infra/tests/Selenium/PythonExported/test_suiteBasics-executar.py-e 16 | -------------------------------------------------------------------------------- /containers/README.md: -------------------------------------------------------------------------------- 1 | # SEI-DOCKER 2 | 3 | ## Containers 4 | 5 | Na pasta containers encontram-se as receitas para as imagens docker. Os conteineres já existem de forma pública para você rodar o projeto em sua máquina local ou infra. Não é necessário entrar aqui ou conhecer essa área para rodar o SEI. 6 | 7 | Mas caso mesmo assim deseje buildar as imagens por conta própria, modificá-las ou usar o seu próprio registry; basta acessar essa pasta. Nela estão as receitas docker usadas, bem como as automatizações (Makefile) para criar seus próprios conteineres em seu próprio Docker Registry. 8 | 9 | Rode ``` make help ``` para uma lista de todos os comandos disponíveis. 10 | 11 | Rode ``` make getenv ``` para criar um arquivo envcontainers.env que serve de modelo para rodar todos os outros targets. Altere-o a seu gosto. 12 | 13 | Verifique que se vc alterar esse arquivo, deverá replicar essas alteracoes com o novo DOCKER_REGISTRY e DOCKER_CONTAINER_VERSAO_PRODUTO nos envfiles referentes às outras áreas do projeto (dev e infra) 14 | 15 | 16 | ### Pasta tests 17 | 18 | Mais sobre os testes [clique aqui](../README.md#testes) 19 | -------------------------------------------------------------------------------- /containers/app-php8/app-base-php8/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-rocky93:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ARG IMAGEM_APP_PACOTEMYSQL_PRESENTE=true 10 | ARG IMAGEM_APP_PACOTESQLSERVER_PRESENTE=true 11 | ARG IMAGEM_APP_PACOTEORACLE_PRESENTE=true 12 | ARG IMAGEM_APP_PACOTEPOSTGRES_PRESENTE=true 13 | 14 | ENV TERM="xterm" \ 15 | LANG="pt_BR.ISO-8859-1" 16 | 17 | ADD assets /tmp/assets 18 | 19 | RUN /tmp/assets/copy-packages.sh && \ 20 | /tmp/assets/install.sh && \ 21 | rm -rf /tmp/assets -------------------------------------------------------------------------------- /containers/app-php8/app-base-php8/assets/ca-certIN.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIHAjCCBOqgAwIBAgIJAJVIeKgiEmNTMA0GCSqGSIb3DQEBDQUAMIGYMQswCQYD 3 | VQQGEwJCUjETMBEGA1UECgwKSUNQLUJyYXNpbDE9MDsGA1UECww0SW5zdGl0dXRv 4 | IE5hY2lvbmFsIGRlIFRlY25vbG9naWEgZGEgSW5mb3JtYWNhbyAtIElUSTE1MDMG 5 | A1UEAwwsQXV0b3JpZGFkZSBDZXJ0aWZpY2Fkb3JhIFJhaXogQnJhc2lsZWlyYSB2 6 | MTAwHhcNMjAwMzEyMTkzMTQyWhcNMzIwNzAxMTIwMDU5WjCBjDELMAkGA1UEBhMC 7 | QlIxEzARBgNVBAoMCklDUC1CcmFzaWwxNTAzBgNVBAsMLEF1dG9yaWRhZGUgQ2Vy 8 | dGlmaWNhZG9yYSBSYWl6IEJyYXNpbGVpcmEgdjEwMTEwLwYDVQQDDChBdXRvcmlk 9 | YWRlIENlcnRpZmljYWRvcmEgZG8gU0VSUFJPIFNTTHYxMIICIjANBgkqhkiG9w0B 10 | AQEFAAOCAg8AMIICCgKCAgEA61jQVBX27GVzyZkJuyrEezqjBGdLSJDFRyGdwxbm 11 | 8Ntr0AA8blhDaN5ASDOjqDESMA7xF38znfkZWBMLxJ3Ob0271W6G9bqgTwp/svhZ 12 | s91UcbZW6sB7gyxzMTGWLxcFMeBrurM0QpMVsp8hDH5Suv5rfP0YB9brz60k104u 13 | HG625rAcbRKHn7XsWJ1ZUQcwRzx1g0L1NlUKpsk0+eOAxTcVSVRTO33k+n6Gve83 14 | 4MXMiG6Orved4isnEvQnl4AecCXOuUuM3vXZ+kdJGTpNy1HOy0coFdKCJSSCxU/y 15 | TbTiAiRJTc8rbvor3I7k7wR4ZDR8alDbW/Sbw1JEMtbQqMOXEOV7iEUIub0/uNT2 16 | g0oM4pu8DAxhIwy2YQCpjfCbzYu2bf1nabuOEQ2B4mFt/zgoxa5FLsM+0IjpCi8u 17 | z9RqLvYFo9pIy5BTi7JMkVfbgqcOv7vkQf3xF7sODdInCVRIbB0R6xpHm+bpitx9 18 | t5ip+Sf24QFlKbjy0gwVAnaEyf/iQF+t8qgcFBO65kyfH/2vs6iYg5TNhFKtjpqQ 19 | iTyI7YkRkfTbLFdcgZbiRUUs5TFi0BkS4PAWupO1GgV9sJdk9gm3Z+KNZDgoAnu7 20 | Cvhq1JXt6t7qO96WzBx9q9hi7T6eld1VFrV5Ya5kxM9Lgh+XcBDwfnDLI1Yoozbd 21 | MbkCAwEAAaOCAVcwggFTMIGtBgNVHSAEgaUwgaIwTwYGYEwBAYEJMEUwQwYIKwYB 22 | BQUHAgEWN2h0dHBzOi8vcmVwb3NpdG9yaW8uc2VycHJvLmdvdi5ici9kb2NzL2Rw 23 | Y3NlcnByb3NzbC5wZGYwTwYGYEwBAgFpMEUwQwYIKwYBBQUHAgEWN2h0dHBzOi8v 24 | cmVwb3NpdG9yaW8uc2VycHJvLmdvdi5ici9kb2NzL2RwY3NlcnByb3NzbC5wZGYw 25 | QAYDVR0fBDkwNzA1oDOgMYYvaHR0cDovL2FjcmFpei5pY3BicmFzaWwuZ292LmJy 26 | L0xDUmFjcmFpenYxMC5jcmwwHwYDVR0jBBgwFoAUdPN+//yfU3rxfOurPqSm2hi6 27 | RWMwHQYDVR0OBBYEFK0WT0vxDL7CiqKFGNcNRiWTIuPNMA8GA1UdEwEB/wQFMAMB 28 | Af8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBDQUAA4ICAQCDvWkOYakalAHB 29 | 3ZcifI9yLyuTtjR8eYXlfDesYr7zMFVlmduVghCgueBMZxmht9BpLq9/ceBWu1q8 30 | sKge5oNNyySPmBJFe+CLjtB7Z1Ljk0Q/7A59lMCDZajojJlSEnH6pdhxA1JD58E0 31 | dGsom3SufuBWxdNfgsvpQNXDoKp48VlkyL4DKFCdJExtzuR5IlcQbB1FrmB5m2zo 32 | GG6j7UdoevmikIv01la+8kyn7CF5aNubRE0cfwxulik5LNM1uLIwfUVwYbbQiB8z 33 | baLUOS2lU/pYr+seLQ7VBPHps/guGB9hKei/Df49KWjDVplu3+AuZhBHqiK533VJ 34 | f9Uwv3Rvx8FCobT54OCrAVfnFs8F6sM3dPh1u7AbW3Ddpeo4oBH5kBA0feLvLk7v 35 | mOnOq64oPMMoj+g6x0B0v7tGqOrNBZK486MaU/uaJi+omx+Le9EfyIz39BbRYGdV 36 | JvO/9P8vn5XnNXsmqziw08ENLjHcrro48tRm3YX0/BUgoitjMUqyzlKTgQ8UOpfi 37 | XeJzqvxvUMO/HgZK9aknN3WQXWXxIFG01OHsEOTd2Nddqbrth5qmZE+1IxwEH+ys 38 | QQzlV0pnPL5K0bRuPCqvH4Jr0CmwV2PqD6dkjI/Sy77XDkTP8adAuYjIEynBoQ0b 39 | tqY/0rJPT3dztepWAwRHhKbvO1yYkA== 40 | -----END CERTIFICATE----- -------------------------------------------------------------------------------- /containers/app-php8/app-base-php8/assets/copy-packages.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | mkdir -p /tmp/assets/pacotes 6 | cd /tmp/assets/pacotes 7 | 8 | curl -L -O \ 9 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/msttcore-fonts-2.0-3.noarch.rpm \ 10 | -O \ 11 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/uploadprogress-2.0.2.tgz \ 12 | -O \ 13 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/wkhtmltox-0.12.6.1-2.almalinux9.x86_64.rpm \ 14 | -O \ 15 | https://github.com/pengovbr/sei-docker-binarios/raw/refs/heads/main/pacoteslinux/oracle-instantclient-basic-23.6.0.24.10-1.el9.x86_64.rpm 16 | 17 | cd - -------------------------------------------------------------------------------- /containers/app-php8/app-base-php8/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | yum update -y 6 | dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm 7 | dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm 8 | dnf install -y https://dl.fedoraproject.org/pub/epel/epel-next-release-latest-9.noarch.rpm 9 | 10 | dnf module install -y php:remi-8.2 11 | yum install --skip-broken -y httpd memcached openssl wget zip unzip gcc \ 12 | java-1.8.0-openjdk libxml2 cabextract fontconfig mod_ssl vim procps 13 | 14 | dnf install --skip-broken -y php php-cli php-common php-pear php-bcmath php-gd php-gmp php-imap php-intl php-ldap php-mbstring php-odbc php-pdo php-pecl-apcu php-pspell php-zlib php-snmp php-soap php-xml php-xmlrpc php-zts php-devel php-pecl-apcu-devel php-pecl-memcache php-calendar php-shmop php-intl php-mcrypt php-zip php-pecl-zip php-pecl-uploadprogress 15 | dnf install -y php-pecl-gearman 16 | dnf install --skip-broken -y libgearman libgearman-devel php-sodium git gearmand libgearman-dev libgearman-devel 17 | 18 | yum install -y xorg-x11-fonts-75dpi 19 | 20 | mkdir -p /run/php-fpm 21 | 22 | yum -y install glibc-locale-source diffutils 23 | localedef pt_BR -i pt_BR -f ISO-8859-1 24 | localedef pt_BR.ISO-8859-1 -i pt_BR -f ISO-8859-1 25 | localedef pt_BR.ISO8859-1 -i pt_BR -f ISO-8859-1 26 | 27 | dnf install -y --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm 28 | dnf install -y https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-$(rpm -E %rhel).noarch.rpm 29 | dnf config-manager --set-enabled crb 30 | dnf install -y ffmpeg 31 | 32 | 33 | cd /tmp/assets/pacotes 34 | 35 | # fonts libraries 36 | rpm -Uvh msttcore-fonts-2.0-3.noarch.rpm 37 | 38 | # wkhtml 39 | rpm -Uvh wkhtmltox-0.12.6.1-2.almalinux9.x86_64.rpm 40 | 41 | mkdir /opt2 42 | cd /opt && tar -cvzf remi.tgz remi 43 | mv remi.tgz /opt2 44 | cd - 45 | 46 | if [ "$IMAGEM_APP_PACOTEMYSQL_PRESENTE" == "true" ]; then 47 | 48 | yum install -y php-mysql 49 | 50 | fi 51 | 52 | if [ "$IMAGEM_APP_PACOTESQLSERVER_PRESENTE" == "true" ]; then 53 | 54 | curl https://packages.microsoft.com/config/rhel/9/prod.repo | tee /etc/yum.repos.d/mssql-release.repo 55 | yum remove unixODBC-utf16 unixODBC-utf16-devel 56 | ACCEPT_EULA=Y yum install -y msodbcsql18 57 | ACCEPT_EULA=Y yum install -y mssql-tools18 58 | echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc 59 | source ~/.bashrc 60 | yum install -y unixODBC-devel 61 | yum install -y php-sqlsrv-5.12.0 62 | 63 | # Ver issue #19 64 | mv /opt/microsoft /opt2 65 | ln -s /opt2/microsoft /opt/microsoft 66 | 67 | fi 68 | 69 | if [ "$IMAGEM_APP_PACOTEORACLE_PRESENTE" == "true" ]; then 70 | 71 | # ORACLE oci 72 | 73 | #yum install -y oracle-instantclient-basic-21.12.0.0.0-1.el9.x86_64.rpm 74 | #yum install -y oracle-instantclient-devel-21.12.0.0.0-1.el9.x86_64.rpm 75 | yum install -y oracle-instantclient-basic-23.6.0.24.10-1.el9.x86_64.rpm 76 | 77 | rm -rf oracle-instantclient-basic-23.6.0.24.10-1.el9.x86_64.rpm 78 | 79 | #yum install -y systemtap-sdt-devel 80 | #pecl channel-update pecl.php.net 81 | #export PHP_DTRACE=yes && echo "" | pecl install oci8-3.3.0 && unset PHP_DTRACE 82 | #echo "extension=oci8.so" > /etc/php.d/oci8.ini 83 | 84 | yum install -y php-oci8 85 | 86 | fi 87 | 88 | if [ "$IMAGEM_APP_PACOTEPOSTGRES_PRESENTE" == "true" ]; then 89 | 90 | yum install -y php-pgsql 91 | 92 | fi 93 | 94 | cd - 95 | 96 | sed -i 's/;clear_env = no/clear_env = no/g' /etc/php-fpm.d/www.conf 97 | -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8-agendador/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/app-ci-php8:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ADD assets /tmp/assets 10 | 11 | 12 | RUN /tmp/assets/install.sh && \ 13 | rm -rf /tmp/assets 14 | 15 | ENTRYPOINT /entrypoint-agendador.sh 16 | -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8-agendador/assets/conf/mod-pen/supervisor.ini.template: -------------------------------------------------------------------------------- 1 | [program:monitoramento_tarefas_pen] 2 | command=/usr/bin/php -c /etc/php.ini /opt/sei/scripts/mod-pen/MonitoramentoTarefasPEN.php --monitorar --segundo-plano 3 | directory=/opt/sei/web 4 | user=root 5 | numprocs=1 6 | autostart=true 7 | autorestart=true 8 | startsecs=5 9 | startretries=10000000 10 | log_stdout=true 11 | log_stderr=true 12 | logfile_maxbytes=0 13 | logfile_backups=50 14 | logfile=/proc/1/fd/1 15 | stdout_logfile=/proc/1/fd/1 16 | stderr_logfile=/proc/1/fd/2 17 | stderr_events_enabled=true 18 | 19 | [program:processamento_tarefas_pen] 20 | command=/usr/bin/php -c /etc/php.ini /opt/sei/scripts/mod-pen/ProcessamentoTarefasPEN.php --worker=%(process_num)02d 21 | directory=/opt/sei/web 22 | process_name=%(program_name)s_%(process_num)02d 23 | numprocs=<> 24 | user=root 25 | autostart=true 26 | autorestart=true 27 | startsecs=5 28 | startretries=10000000 29 | log_stdout=true 30 | log_stderr=true 31 | logfile_backups=0 32 | logfile_maxbytes=10MB 33 | logfile=/proc/1/fd/1 34 | stdout_logfile=/proc/1/fd/1 35 | stderr_logfile=/proc/1/fd/2 36 | stderr_events_enabled=true -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8-agendador/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | #yum -y update 6 | 7 | yum install -y --skip-broken \ 8 | cronie \ 9 | gearmand \ 10 | libgearman \ 11 | libgearman-devel \ 12 | php-pecl-gearman \ 13 | python-pip 14 | 15 | 16 | #Instalação Supervisor 17 | pip install "supervisor>=4" 18 | mkdir -p /etc/supervisor/ 19 | #echo_supervisord_conf > /etc/supervisor/supervisord.conf 20 | mv /tmp/assets/conf/supervisord.conf /etc/supervisor/supervisord.conf 21 | mv /tmp/assets/conf/mod-pen/supervisor.ini.template /etc/supervisor/ 22 | mv /tmp/assets/scripts-e-automatizadores/entrypoint-agendador.sh / 23 | chmod +x /entrypoint-agendador.sh 24 | 25 | 26 | yum clean all 27 | rm -rf /var/cache/yum 28 | -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-app-php8:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ADD assets /tmp/assets 10 | 11 | ARG GITPASS_REPO_MODULOS 12 | ARG GITUSER_REPO_MODULOS 13 | 14 | RUN /tmp/assets/install.sh && \ 15 | rm -rf /tmp/assets 16 | 17 | EXPOSE 80 18 | EXPOSE 443 -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/conf/ConfiguracaoSip.php: -------------------------------------------------------------------------------- 1 | array( 20 | 'URL' => getenv('APP_PROTOCOLO').'://'.getenv('APP_HOST').'/sip', 21 | 'Producao' => true 22 | ), 23 | 24 | 'PaginaSip' => array('NomeSistema' => 'SIP'), 25 | 26 | 'SessaoSip' => array( 27 | 'SiglaOrgaoSistema' => getenv('APP_ORGAO'), 28 | 'SiglaSistema' => 'SIP', 29 | 'PaginaLogin' => getenv('APP_PROTOCOLO').'://'.getenv('APP_HOST').'/sip/login.php', 30 | 'SipWsdl' => getenv('APP_PROTOCOLO').'://'.getenv('APP_HOST').'/sip/controlador_ws.php?servico=sip', 31 | 'ChaveAcesso' => getenv('APP_SIP_CHAVE_ACESSO'), 32 | 'https' => (getenv('APP_PROTOCOLO') == 'https' ? true : false)), 33 | 34 | 'BancoSip' => array( 35 | 'Servidor' => getenv('APP_DB_HOST'), 36 | 'Porta' => getenv('APP_DB_PORTA'), 37 | 'Banco' => getenv('APP_DB_SIP_BASE'), 38 | 'Usuario' => getenv('APP_DB_SIP_USERNAME'), 39 | 'Senha' => getenv('APP_DB_SIP_PASSWORD'), 40 | 'UsuarioScript' => getenv('APP_DB_SIP_USERNAME'), 41 | 'SenhaScript' => getenv('APP_DB_SIP_PASSWORD'), 42 | 'Tipo' => getenv('APP_DB_TIPO')), //MySql, SqlServer, Oracle ou PostgreSql 43 | 44 | /* 45 | 'BancoAuditoriaSip' => array( 46 | 'Servidor' => '[Servidor BD]', 47 | 'Porta' => '', 48 | 'Banco' => '', 49 | 'Usuario' => '', 50 | 'Senha' => '', 51 | 'Tipo' => ''), //MySql, SqlServer, Oracle ou PostgreSql 52 | */ 53 | 54 | 'CacheSip' => array('Servidor' => 'memcached', 55 | 'Porta' => '11211'), 56 | 57 | 'hCaptcha' => array( 58 | 'ChaveSecreta' => '', 59 | 'ChaveSite' => '' 60 | ), 61 | 62 | 'ReCaptchaV2' => array( 63 | 'ChaveSecreta' => '', 64 | 'ChaveSite' => '' 65 | ), 66 | 67 | 'ReCaptchaV3' => array( 68 | 'ChaveSecreta' => '', 69 | 'ChaveSite' => '', 70 | 'Score' => 0.5 71 | ), 72 | 73 | 'InfraMail' => array( 74 | 'Tipo' => '2', //1 = sendmail (neste caso nao e necessario configurar os atributos abaixo), 2 = SMTP 75 | 'Servidor' => 'smtp', 76 | 'Porta' => '25', 77 | 'Codificacao' => '8bit', //8bit, 7bit, binary, base64, quoted-printable 78 | 'MaxDestinatarios' => 999, //numero maximo de destinatarios por mensagem 79 | 'MaxTamAnexosMb' => 999, //tamanho maximo dos anexos em Mb por mensagem 80 | 'Seguranca' => '', //TLS, SSL ou vazio 81 | 'Autenticar' => false, //se true entao informar Usuario e Senha 82 | 'Usuario' => '', 83 | 'Senha' => '', 84 | 'Protegido' => '' //campo usado em desenvolvimento, se tiver um email preenchido entao todos os emails enviados terao o destinatario ignorado e substituido por este valor (evita envio incorreto de email) 85 | ) 86 | ); 87 | } 88 | } 89 | 90 | ?> -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/conf/sei.conf: -------------------------------------------------------------------------------- 1 | KeepAlive On 2 | MaxKeepAliveRequests 100 3 | KeepAliveTimeout 15 4 | 5 | Alias "/sei" "/opt/sei/web" 6 | Alias "/sip" "/opt/sip/web" 7 | Alias "/infra_css" "/opt/infra/infra_css" 8 | Alias "/infra_js" "/opt/infra/infra_js" 9 | 10 | SetEnvIfNoCase user-agent "Microsoft Data Access Internet Publishing Provider Protocol Discovery" bad_bot=1 11 | 12 | Order Allow,Deny 13 | Allow from all 14 | Deny from env=bad_bot 15 | 16 | 17 | 18 | 19 | DocumentRoot /var/www/html 20 | 21 | ServerAdmin admin@dominio.gov.br 22 | ServerName localhost 23 | 24 | DirectoryIndex index.php index.html 25 | IndexIgnore * 26 | 27 | EnableSendfile Off 28 | HostnameLookups Off 29 | ServerSignature Off 30 | AddDefaultCharset iso-8859-1 31 | 32 | # Bloqueia acesso à qualquer arquivo ou diretório externo ao DocumentRoot 33 | 34 | AllowOverride None 35 | Require all denied 36 | 37 | 38 | 39 | AllowOverride None 40 | Options None 41 | Require all granted 42 | 43 | 44 | 45 | 46 | 47 | 48 | SSLEngine on 49 | SSLCertificateFile /etc/pki/tls/certs/sei.crt 50 | SSLCertificateChainFile /etc/pki/tls/certs/sei-ca.pem 51 | SSLCertificateKeyFile /etc/pki/tls/private/sei.key 52 | 53 | DocumentRoot /var/www/html 54 | 55 | ServerAdmin admin@dominio.gov.br 56 | ServerName localhost 57 | 58 | DirectoryIndex index.php index.html 59 | IndexIgnore * 60 | 61 | EnableSendfile Off 62 | HostnameLookups Off 63 | ServerSignature Off 64 | AddDefaultCharset iso-8859-1 65 | 66 | # Bloqueia acesso à qualquer arquivo ou diretório externo ao DocumentRoot 67 | 68 | AllowOverride None 69 | Require all denied 70 | 71 | 72 | 73 | AllowOverride None 74 | Options None 75 | Require all granted 76 | 77 | 78 | -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/conf/sei.ini: -------------------------------------------------------------------------------- 1 | [php] 2 | include_path = ".:/php/includes:/opt/infra/infra_php" 3 | default_charset = "iso-8859-1" 4 | session.gc_maxlifetime = 28800 5 | short_open_tag = On 6 | default_socket_timeout = 60 7 | max_input_vars = 2000 8 | magic_quotes_gpc = 0 9 | magic_quotes_runtime = 0 10 | magic_quotes_sybase = 0 11 | html_errors = 0 12 | always_populate_raw_post_data = -1 13 | 14 | post_max_size = 505M 15 | upload_max_filesize = 500M 16 | 17 | ;openssl.cafile=/etc/ssl/certs/cacert.pem 18 | ;curl.cainfo=/etc/ssl/certs/cacert.pem 19 | 20 | 21 | ; Retirados da configuração do php.ini de produção. Verificar necessidade 22 | ; y2k_compliance = On 23 | ; serialize_precision = 100 24 | ; allow_call_time_pass_reference = Off 25 | ; safe_mode = Off 26 | ; safe_mode_gid = Off 27 | ; safe_mode_include_dir = 28 | ; safe_mode_exec_dir = 29 | ; safe_mode_allowed_env_vars = PHP_ 30 | ; safe_mode_protected_env_vars = LD_LIBRARY_PATH 31 | ; error_reporting = E_ALL & ~E_DEPRECATED 32 | ; html_errors = Off 33 | ; register_globals = Off 34 | ; register_long_arrays = Off -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | cp /tmp/assets/conf/sei.ini /etc/php.d/ 6 | cp /tmp/assets/conf/sei.conf /etc/httpd/conf.d/ 7 | 8 | cp /tmp/assets/scripts-e-automatizadores/entrypoint.sh / 9 | cp /tmp/assets/scripts-e-automatizadores/entrypoint-atualizador.sh / 10 | 11 | /tmp/assets/scripts-e-automatizadores/clone-modules.sh 12 | 13 | mkdir -p /sei/controlador-instalacoes/ /sei/arquivos_externos_sei/ /sei/certs 14 | mkdir -p /sei/files/conf /sei/files/scripts-e-automatizadores/modulos 15 | mv /tmp/assets/conf/ConfiguracaoSEI.php /sei/files/conf 16 | mv /tmp/assets/conf/ConfiguracaoSip.php /sei/files/conf 17 | mv /tmp/assets/scripts-e-automatizadores/openldap /tmp/assets/scripts-e-automatizadores/misc /sei/files/scripts-e-automatizadores/ 18 | mv /tmp/assets/scripts-e-automatizadores/modulos/* /sei/files/scripts-e-automatizadores/modulos/ -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/clone-modules.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mkdir -p /sei-modulos 4 | 5 | cd /sei-modulos 6 | 7 | git clone https://github.com/supergovbr/mod-sei-estatisticas.git 8 | git clone https://github.com/supergovbr/mod-sei-pen.git 9 | git clone https://github.com/supergovbr/mod-wssei.git 10 | git clone https://github.com/anatelgovbr/mod-sei-peticionamento.git peticionamento 11 | git clone https://github.com/supergovbr/mod-sei-protocolo-integrado.git 12 | 13 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-resposta.git 14 | cd mod-sei-resposta 15 | git remote set-url origin https://github.com/pengovbr/mod-sei-resposta.git 16 | cd .. 17 | 18 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-incom.git 19 | cd mod-sei-incom 20 | git remote set-url origin https://github.com/pengovbr/mod-sei-incom.git 21 | cd .. 22 | 23 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-gestao-documental.git 24 | cd mod-gestao-documental 25 | git remote set-url origin https://github.com/pengovbr/mod-gestao-documental.git 26 | cd .. 27 | 28 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-loginunico.git 29 | cd mod-sei-loginunico 30 | git remote set-url origin https://github.com/pengovbr/mod-sei-loginunico.git 31 | cd .. 32 | 33 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-assinatura-avancada.git 34 | cd mod-sei-assinatura-avancada 35 | git remote set-url origin https://github.com/pengovbr/mod-sei-assinatura-avancada.git 36 | cd .. -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/misc/cadastrarMultiorgao.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 11 | InfraDebug::getInstance()->setBolDebugInfra(false); 12 | InfraDebug::getInstance()->setBolEcho(true); 13 | 14 | $conexao = BancoSip::getInstance(); 15 | 16 | $siglas = getenv('APP_ORGAOS_ADICIONAIS_SIGLA'); 17 | $nomes = getenv('APP_ORGAOS_ADICIONAIS_NOME'); 18 | 19 | 20 | if( $siglas == "" || $nomes == "" ){ 21 | 22 | echo "Siglas ou Nomes dos Orgaos nao informados completamente, pulando etapa de configuracao multiorgaos"; 23 | echo ""; 24 | exit(0); 25 | 26 | } 27 | 28 | $arrSiglas = explode("/", $siglas); 29 | $arrNomes = explode("/", $nomes); 30 | 31 | if( count($arrSiglas) != count($arrNomes) ){ 32 | 33 | echo "Siglas ou Nomes dos Orgaos nao informados corretamente. Erro na correlacao de sigla/nome."; 34 | echo ""; 35 | echo "Pulando etapa de configuracao de multiorgaos"; 36 | echo ""; 37 | exit(0); 38 | 39 | } 40 | 41 | for ($i=0; $i < count($arrSiglas) ; $i++) { 42 | 43 | $sigla = $arrSiglas[$i]; 44 | $nome = $arrNomes[$i]; 45 | $ordem = $i + 1; 46 | 47 | echo $sigla; 48 | echo $nome; 49 | 50 | $objOrgaoDTO = new OrgaoDTO(); 51 | $objOrgaoDTO->setNumIdOrgao(null); 52 | $objOrgaoDTO->setStrSigla($sigla); 53 | $objOrgaoDTO->setStrDescricao($nome); 54 | $objOrgaoDTO->setNumOrdem($ordem); 55 | 56 | $objOrgaoDTO->setStrSinAutenticar('N'); 57 | $objOrgaoDTO->setStrSinAtivo('S'); 58 | 59 | $arrObjRelOrgaoAutenticacaoDTO = array(); 60 | $objOrgaoDTO->setArrObjRelOrgaoAutenticacaoDTO($arrObjRelOrgaoAutenticacaoDTO); 61 | 62 | $objOrgaoRN = new OrgaoRN(); 63 | $objOrgaoDTO = $objOrgaoRN->cadastrar($objOrgaoDTO); 64 | 65 | echo "Criacao do orgao $sigla feita com sucesso\n"; 66 | 67 | } 68 | 69 | 70 | 71 | ?> -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/misc/enableservicePD.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 12 | InfraDebug::getInstance()->setBolDebugInfra(false); 13 | InfraDebug::getInstance()->setBolEcho(true); 14 | 15 | $conexao = BancoSEI::getInstance(); 16 | $conexao->setBolScript(true); 17 | 18 | $SIGLA_SISTEMA=getenv('SERVICO_PD_SIGLA') ?: "GOV.BR"; 19 | $SERVICO_NOME=getenv('SERVICO_PD_NOME') ?: "Protocolo.GOV.BR"; 20 | $STR_OPERACOES=getenv('SERVICO_PD_OPERACOES') ?: "3,2,15,0,1"; 21 | 22 | 23 | $objUsuarioDTO = new UsuarioDTO(); 24 | $objUsuarioDTO->setNumIdUsuario(null); 25 | $objUsuarioDTO->setNumIdOrgao(0); 26 | $objUsuarioDTO->setStrIdOrigem(null); 27 | $objUsuarioDTO->setStrSigla($SIGLA_SISTEMA); 28 | $objUsuarioDTO->setStrNome($SIGLA_SISTEMA); 29 | $objUsuarioDTO->setNumIdContato(null); 30 | $objUsuarioDTO->setStrStaTipo(UsuarioRN::$TU_SISTEMA); 31 | $objUsuarioDTO->setStrSenha(null); 32 | try{ 33 | $objUsuarioDTO->setStrSinAcessibilidade('N'); 34 | }catch(Exception $e){;} 35 | $objUsuarioDTO->setStrSinAtivo('S'); 36 | 37 | $objUsuarioRN = new UsuarioRN(); 38 | $objUsuarioDTO = $objUsuarioRN->cadastrarRN0487($objUsuarioDTO); 39 | 40 | $id_usuario=$objUsuarioDTO->getNumIdUsuario(); 41 | 42 | $objServicoDTO = new ServicoDTO(); 43 | $objServicoDTO->setNumIdServico(null); 44 | $objServicoDTO->setNumIdUsuario($id_usuario); 45 | $objServicoDTO->setStrIdentificacao($SERVICO_NOME); 46 | $objServicoDTO->setStrDescricao($SERVICO_NOME); 47 | $objServicoDTO->setStrServidor("*"); 48 | $objServicoDTO->setStrSinLinkExterno("S"); 49 | $objServicoDTO->setStrSinServidor("S"); 50 | $objServicoDTO->setStrSinChaveAcesso("N"); 51 | $objServicoDTO->setStrSinAtivo('S'); 52 | 53 | $objServicoRN = new ServicoRN(); 54 | $objServicoDTO = $objServicoRN->cadastrar($objServicoDTO); 55 | 56 | $id_servico = $objServicoDTO->getNumIdServico(); 57 | 58 | $arrOperacoes = explode(",", $STR_OPERACOES); 59 | 60 | foreach($arrOperacoes as $o){ 61 | $objOperacaoServicoDTO = new OperacaoServicoDTO(); 62 | $objOperacaoServicoDTO->setNumIdOperacaoServico(null); 63 | $objOperacaoServicoDTO->setNumIdServico($id_servico); 64 | $numStaOperacaoServico = $o; 65 | $objOperacaoServicoDTO->setNumStaOperacaoServico($numStaOperacaoServico); 66 | $objOperacaoServicoDTO->setNumIdTipoProcedimento(null); 67 | $objOperacaoServicoDTO->setNumIdSerie(null); 68 | $objOperacaoServicoDTO->setNumIdUnidade(null); 69 | $objOperacaoServicoRN = new OperacaoServicoRN(); 70 | $objOperacaoServicoDTO = $objOperacaoServicoRN->cadastrar($objOperacaoServicoDTO); 71 | } 72 | 73 | ?> -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/modulos/mod-sei-estatisticas/sei_gov_configurar_ambiente.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/modulos/mod-sei-estatisticas/sei_gov_configurar_ambiente.php -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/modulos/mod-sei-incom/mod-sei-incom.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 12 | InfraDebug::getInstance()->setBolDebugInfra(false); 13 | InfraDebug::getInstance()->setBolEcho(true); 14 | 15 | $MODULO_INCOM_VEICULOID = getenv('MODULO_INCOM_VEICULOID') ?: '2'; 16 | $MODULO_INCOM_SERIEID = getenv('MODULO_INCOM_SERIEID') ?: '10'; 17 | $MODULO_INCOM_SIORG = getenv('MODULO_INCOM_SIORG') ?: '235876'; 18 | $MODULO_INCOM_URLWS = getenv('MODULO_INCOM_URLWS') ?: 'https://seiwsincom2.in.gov.br/seiwsincom/services/servicoIN?wsdl'; 19 | $MODULO_INCOM_USERWS = getenv('MODULO_INCOM_USERWS') ?: 'XXX'; 20 | $MODULO_INCOM_PASSWS = getenv('MODULO_INCOM_PASSWS') ?: 'XXX'; 21 | $MODULO_INCOM_INCLUSAOPUBLICACAO = getenv('MODULO_INCOM_INCLUSAOPUBLICACAO') ?: 'S'; 22 | 23 | $conexao = BancoSEI::getInstance(); 24 | $conexao->abrirConexao(); 25 | 26 | $objMdIncomConfiguracaoDTO = new MdIncomConfiguracaoDTO(); 27 | $objMdIncomConfiguracaoDTO->setNumIdConfiguracao(1); 28 | $objMdIncomConfiguracaoDTO->setNumIdVeiculoPublicacao($MODULO_INCOM_VEICULOID); 29 | $objMdIncomConfiguracaoDTO->setNumIdSerie($MODULO_INCOM_SERIEID); 30 | $objMdIncomConfiguracaoDTO->setNumIdSiorgOrgao($MODULO_INCOM_SIORG); 31 | $objMdIncomConfiguracaoDTO->setStrWebService($MODULO_INCOM_URLWS); 32 | $objMdIncomConfiguracaoDTO->setStrUsuarioWebservice($MODULO_INCOM_USERWS); 33 | $objMdIncomConfiguracaoDTO->setStrSenhaWebservice($MODULO_INCOM_PASSWS); 34 | $objMdIncomConfiguracaoDTO->setStrSinInclusaoPublicacao($MODULO_INCOM_INCLUSAOPUBLICACAO); 35 | 36 | try{ 37 | $objMdIncomConfiguracaoBD = new MdIncomConfiguracaoBD($conexao); 38 | $ret = $objMdIncomConfiguracaoBD->alterar($objMdIncomConfiguracaoDTO); 39 | }catch(Exception $e){ 40 | echo "Erro ao configurar modulo INCOM. Verifique. Nao vamos interromper a execucao."; 41 | echo "Erro: " . print_r($e, true); 42 | echo ""; 43 | } 44 | 45 | ?> -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/modulos/mod-sei-pen/mod-sei-pen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | if [ -z "$MODULO_PEN_REPOSITORIO_ORIGEM" ]; then 5 | echo "Nenhum valor informado para MODULO_PEN_REPOSITORIO_ORIGEM, n sera feita a configuracao automatica para esse parametro" 6 | else 7 | echo "Configurando MODULO_PEN_REPOSITORIO_ORIGEM" 8 | php -r " 9 | require_once '/opt/sei/web/SEI.php'; 10 | \$conexao = BancoSEI::getInstance(); 11 | \$conexao->abrirConexao(); 12 | \$conexao->executarSql(\"UPDATE md_pen_parametro SET valor = $MODULO_PEN_REPOSITORIO_ORIGEM WHERE nome = 'PEN_ID_REPOSITORIO_ORIGEM'\"); 13 | " 14 | fi 15 | 16 | if [ -z "$MODULO_PEN_TIPO_PROCESSO_EXTERNO" ]; then 17 | echo "Nenhum valor informado para MODULO_PEN_TIPO_PROCESSO_EXTERNO, nao sera feita a config automatica para esse parametro" 18 | else 19 | echo "Configurando MODULO_PEN_TIPO_PROCESSO_EXTERNO" 20 | php -r " 21 | require_once '/opt/sei/web/SEI.php'; 22 | \$conexao = BancoSEI::getInstance(); 23 | \$conexao->abrirConexao(); 24 | \$conexao->executarSql(\"UPDATE md_pen_parametro SET valor = $MODULO_PEN_TIPO_PROCESSO_EXTERNO WHERE nome = 'PEN_TIPO_PROCESSO_EXTERNO'\"); 25 | " 26 | fi 27 | 28 | if [ -z "$MODULO_PEN_UNIDADE_GERADORA" ]; then 29 | echo "Nenhum valor informado para MODULO_PEN_UNIDADE_GERADORA, nao sera feita a config automatica para esse parametro" 30 | else 31 | echo "Configurando MODULO_PEN_UNIDADE_GERADORA" 32 | php -r " 33 | require_once '/opt/sei/web/SEI.php'; 34 | \$conexao = BancoSEI::getInstance(); 35 | \$conexao->abrirConexao(); 36 | \$conexao->executarSql(\"UPDATE md_pen_parametro SET valor = $MODULO_PEN_UNIDADE_GERADORA WHERE nome = 'PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO'\"); 37 | " 38 | 39 | fi 40 | 41 | if [ -z "$MODULO_PEN_UNIDADE_ASSOCIACAO_SEI" ] || [ -z "$MODULO_PEN_UNIDADE_ASSOCIACAO_PEN" ]; then 42 | echo "Nenhum valor informado para MODULO_PEN_UNIDADE_ASSOCIACAO_PEN ou MODULO_PEN_UNIDADE_ASSOCIACAO_SEI, nao sera feita a config automatica para esse parametro" 43 | else 44 | echo "Configurando MODULO_PEN_UNIDADE_ASSOCIACAO_SEI e MODULO_PEN_UNIDADE_ASSOCIACAO_PEN " 45 | php -r " 46 | require_once '/opt/sei/web/SEI.php'; 47 | \$conexao = BancoSEI::getInstance(); 48 | \$conexao->abrirConexao(); 49 | \$conexao->executarSql(\"insert ignore into md_pen_unidade(id_unidade, id_unidade_rh) values ($MODULO_PEN_UNIDADE_ASSOCIACAO_SEI, $MODULO_PEN_UNIDADE_ASSOCIACAO_PEN)\"); 50 | " 51 | 52 | fi -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/modulos/mod-sei-resposta/mod-sei-resposta.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 12 | InfraDebug::getInstance()->setBolDebugInfra(false); 13 | InfraDebug::getInstance()->setBolEcho(true); 14 | 15 | //$conexao = BancoSEI::getInstance(); 16 | //$conexao->setBolScript(true); 17 | 18 | $MODULO_RESPOSTA_SISTEMA_ID = getenv(' MODULO_RESPOSTA_SISTEMA_ID') ?: 'a:1:{i:0;s:1:"8";}'; 19 | $MODULO_RESPOSTA_DOCUMENTO_ID = getenv('MODULO_RESPOSTA_DOCUMENTO_ID') ?: "153"; 20 | 21 | $objMdRespostaParametroDTO = new MdRespostaParametroDTO(); 22 | $objMdRespostaParametroDTO->setStrNome("PARAM_TIPO_DOCUMENTO"); 23 | //$objMdRespostaParametroDTO->setStrNome(MDRespostaParametroRN::PARAM_TIPO_DOCUMENTO); 24 | $objMdRespostaParametroDTO->setStrValor($MODULO_RESPOSTA_DOCUMENTO_ID); 25 | $arrObjMdRespostaParametroDTO[] = $objMdRespostaParametroDTO; 26 | 27 | $objMdRespostaParametroDTO = new MdRespostaParametroDTO(); 28 | //$objMdRespostaParametroDTO->setStrNome(MDRespostaParametroRN::PARAM_SISTEMA); 29 | $objMdRespostaParametroDTO->setStrNome('PARAM_SISTEMA'); 30 | $objMdRespostaParametroDTO->setStrValor($MODULO_RESPOSTA_SISTEMA_ID); 31 | $arrObjMdRespostaParametroDTO[] = $objMdRespostaParametroDTO; 32 | 33 | $objMdRespostaParametroRN = new MdRespostaParametroRN(); 34 | try{ 35 | $objMdRespostaParametroDTO = $objMdRespostaParametroRN->atribuir($arrObjMdRespostaParametroDTO); 36 | }catch(Exception $e){ 37 | echo "Erro ao configurar modulo de resposta. Verifique. Nao vamos interromper a execucao."; 38 | echo "Erro: " . print_r($e, true); 39 | echo ""; 40 | } 41 | 42 | 43 | ?> -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/openldap/sip-config-openldap-desligar.php: -------------------------------------------------------------------------------- 1 | abrirConexao(); 7 | 8 | 9 | $objOrgaoDTO = new OrgaoDTO(); 10 | $objOrgaoDTO->setNumIdOrgao(0); 11 | $objOrgaoDTO->setStrSinAutenticar('N'); 12 | $objOrgaoBD = new OrgaoBD(BancoSip::getInstance()); 13 | $objOrgaoBD->alterar($objOrgaoDTO); 14 | 15 | ?> -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/remi/libzip/lib64/libzip.so.5: -------------------------------------------------------------------------------- 1 | libzip.so.5.5 -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/remi/libzip/lib64/libzip.so.5.5: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/remi/libzip/lib64/libzip.so.5.5 -------------------------------------------------------------------------------- /containers/app-php8/app-ci-php8/assets/scripts-e-automatizadores/remi/libzip/share/licenses/remi-libzip/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (C) 1999-2020 Dieter Baron and Thomas Klausner 2 | 3 | The authors can be contacted at 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions 7 | are met: 8 | 9 | 1. Redistributions of source code must retain the above copyright 10 | notice, this list of conditions and the following disclaimer. 11 | 12 | 2. Redistributions in binary form must reproduce the above copyright 13 | notice, this list of conditions and the following disclaimer in 14 | the documentation and/or other materials provided with the 15 | distribution. 16 | 17 | 3. The names of the authors may not be used to endorse or promote 18 | products derived from this software without specific prior 19 | written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS 22 | OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 23 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24 | ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY 25 | DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE 27 | GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 28 | INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER 29 | IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 30 | OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 31 | IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 32 | -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-app-php8:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ADD assets /tmp/assets 10 | 11 | RUN /tmp/assets/install.sh && \ 12 | rm -rf /tmp/assets 13 | 14 | EXPOSE 8000 15 | CMD ["/command.sh"] -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/conf/cron.conf: -------------------------------------------------------------------------------- 1 | * * * * * root . /root/cronenv.sh; /usr/bin/php -c /etc/php.ini /opt/sei/scripts/AgendamentoTarefaSEI.php >> /var/log/sei/agendamento_sei.log 2>> /var/log/sei/agendamento_sei.log 2 | * * * * * root . /root/cronenv.sh; /usr/bin/php -c /etc/php.ini /opt/sip/scripts/AgendamentoTarefaSip.php >> /var/log/sei/agendamento_sip.log 2>> /var/log/sei/agendamento_sip.log 3 | 00 01 * * * root rm -rf /opt/sei/temp/* 4 | 00 01 * * * root rm -rf /opt/sip/temp/* -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/conf/deflate.conf: -------------------------------------------------------------------------------- 1 | 2 | SetOutputFilter DEFLATE 3 | 4 | 5 | 6 | ExpiresActive On 7 | ExpiresDefault "access plus 3 seconds" 8 | ExpiresByType text/html "access plus 3 seconds" 9 | ExpiresByType image/gif "access plus 2419200 seconds" 10 | ExpiresByType image/jpeg "access plus 2419200 seconds" 11 | ExpiresByType image/png "access plus 2419200 seconds" 12 | ExpiresByType image/svg+xml "access plus 2419200 seconds" 13 | ExpiresByType text/css "access plus 2419200 seconds" 14 | ExpiresByType text/javascript "access plus 2419200 seconds" 15 | ExpiresByType application/javascript "access plus 2419200 seconds" 16 | ExpiresByType application/x-javascript "access plus 2419200 seconds" 17 | 18 | 19 | 20 | AddOutputFilterByType DEFLATE text/html 21 | AddOutputFilterByType DEFLATE text/css 22 | AddOutputFilterByType DEFLATE text/javascript 23 | AddOutputFilterByType DEFLATE text/xml 24 | AddOutputFilterByType DEFLATE text/plain 25 | AddOutputFilterByType DEFLATE image/x-icon 26 | AddOutputFilterByType DEFLATE application/rss+xml 27 | AddOutputFilterByType DEFLATE application/javascript 28 | AddOutputFilterByType DEFLATE application/x-javascript 29 | AddOutputFilterByType DEFLATE application/xml 30 | AddOutputFilterByType DEFLATE application/xhtml+xml 31 | AddOutputFilterByType DEFLATE application/x-font 32 | AddOutputFilterByType DEFLATE application/x-font-truetype 33 | AddOutputFilterByType DEFLATE application/x-font-ttf 34 | AddOutputFilterByType DEFLATE application/x-font-otf 35 | AddOutputFilterByType DEFLATE application/font-woff 36 | AddOutputFilterByType DEFLATE application/x-font-woff 37 | AddOutputFilterByType DEFLATE application/x-font-woff2 38 | AddOutputFilterByType DEFLATE application/x-font-opentype 39 | AddOutputFilterByType DEFLATE application/vnd.ms-fontobject 40 | AddOutputFilterByType DEFLATE font/ttf 41 | AddOutputFilterByType DEFLATE font/otf 42 | AddOutputFilterByType DEFLATE font/eot 43 | AddOutputFilterByType DEFLATE font/woff 44 | AddOutputFilterByType DEFLATE font/woff2 45 | AddOutputFilterByType DEFLATE font/opentype 46 | 47 | -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/conf/info.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/conf/sei.conf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app-php8/app-dev-php8/assets/conf/sei.conf -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/conf/sei.ini: -------------------------------------------------------------------------------- 1 | [php] 2 | include_path = ".:/php/includes:/opt/infra/infra_php" 3 | default_charset = "iso-8859-1" 4 | session.gc_maxlifetime = 28800 5 | short_open_tag = On 6 | default_socket_timeout = 60 7 | max_input_vars = 2000 8 | magic_quotes_gpc = 0 9 | magic_quotes_runtime = 0 10 | magic_quotes_sybase = 0 11 | html_errors = 0 12 | always_populate_raw_post_data = -1 13 | 14 | post_max_size = 505M 15 | upload_max_filesize = 500M 16 | 17 | ;openssl.cafile=/etc/ssl/certs/cacert.pem 18 | ;curl.cainfo=/etc/ssl/certs/cacert.pem 19 | 20 | 21 | ; Retirados ou alterados da configuração do php.ini de produção. Verificar necessidade 22 | ; y2k_compliance = On 23 | ; serialize_precision = 100 24 | ; allow_call_time_pass_reference = Off 25 | ; safe_mode = Off 26 | ; safe_mode_gid = Off 27 | ; safe_mode_include_dir = 28 | ; safe_mode_exec_dir = 29 | ; safe_mode_allowed_env_vars = PHP_ 30 | ; safe_mode_protected_env_vars = LD_LIBRARY_PATH 31 | ; error_reporting = E_ALL & ~E_DEPRECATED 32 | ; html_errors = Off 33 | ; register_globals = Off 34 | ; register_long_arrays = Off 35 | 36 | 37 | ; Parâmetros recomendados para ambiente de desenvolvimento 38 | error_reporting = E_ALL 39 | display_errors = On 40 | display_startup_errors = On 41 | html_errors = On 42 | always_populate_raw_post_data = -1 43 | -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/conf/xdebug.ini: -------------------------------------------------------------------------------- 1 | ; Enable xdebug extension module 2 | zend_extension=/usr/lib64/php/modules/xdebug.so 3 | xdebug.mode=debug 4 | xdebug.client_host=localhost 5 | xdebug.client_port=9003 6 | xdebug.remote_handler=dbgp 7 | xdebug.discover_client_host=1 8 | xdebug.idekey=default -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | mv /tmp/assets/scripts-e-automatizadores/command.sh \ 6 | /tmp/assets/scripts-e-automatizadores/ConfiguracaoSip.php \ 7 | /tmp/assets/scripts-e-automatizadores/ConfiguracaoSEI.php \ 8 | / 9 | 10 | chmod +x /command.sh 11 | 12 | yum -y update 13 | 14 | #yum install -y http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm 15 | 16 | # Instalação de ferramentas utilitárias e dependências do SEI 17 | yum -y groupinstall 'Development Tools' 18 | yum install -y cronie mysql net-tools nc 19 | 20 | 21 | # Instalação do XDebug, versão 3 22 | pecl install xdebug-3.3.2 23 | 24 | # Configuração de permissão do diretório de arquivos 25 | mkdir -p /var/sei/arquivos 26 | chmod -R 777 /var/sei/arquivos 27 | 28 | # Configuração dos serviços de background do Cron 29 | mkdir /var/log/sei 30 | 31 | cp /tmp/assets/conf/info.php /var/www/html/ 32 | cp /tmp/assets/conf/sei.ini /etc/php.d/ 33 | cp /tmp/assets/conf/sei.conf /etc/httpd/conf.d/ 34 | cp /tmp/assets/conf/deflate.conf /etc/httpd/conf.d/ 35 | cp /tmp/assets/conf/cron.conf /etc/cron.d/sei 36 | chown -R root:root /etc/cron.d/ 37 | chmod 0644 /etc/cron.d/sei 38 | cp /tmp/assets/conf/xdebug.ini /etc/php.d/ 39 | 40 | sed -i "s|^SSLCertificateFile |#SSLCertificateFile|" /etc/httpd/conf.d/ssl.conf 41 | sed -i "s|^SSLCertificateKeyFile |#SSLCertificateKeyFile|" /etc/httpd/conf.d/ssl.conf 42 | sed -i "s|^SSLEngine on|SSLEngine off|" /etc/httpd/conf.d/ssl.conf 43 | 44 | # Remover arquivos temporários 45 | yum clean all 46 | rm -rf /var/cache/yum -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/scripts-e-automatizadores/ConfiguracaoSEI.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app-php8/app-dev-php8/assets/scripts-e-automatizadores/ConfiguracaoSEI.php -------------------------------------------------------------------------------- /containers/app-php8/app-dev-php8/assets/scripts-e-automatizadores/command.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Atribuição dos parâmetros de configuração do SEI 4 | if [ -f /opt/sei/config/ConfiguracaoSEI.php ] && [ ! -f /opt/sei/config/ConfiguracaoSEI.php~ ]; then 5 | mv /opt/sei/config/ConfiguracaoSEI.php /opt/sei/config/ConfiguracaoSEI.php~ 6 | fi 7 | 8 | if [ ! -f /opt/sei/config/ConfiguracaoSEI.php ]; then 9 | cp /ConfiguracaoSEI.php /opt/sei/config/ConfiguracaoSEI.php 10 | fi 11 | 12 | # Atribuição dos parâmetros de configuração do SIP 13 | if [ -f /opt/sip/config/ConfiguracaoSip.php ] && [ ! -f /opt/sip/config/ConfiguracaoSip.php~ ]; then 14 | mv /opt/sip/config/ConfiguracaoSip.php /opt/sip/config/ConfiguracaoSip.php~ 15 | fi 16 | 17 | if [ ! -f /opt/sip/config/ConfiguracaoSip.php ]; then 18 | cp /ConfiguracaoSip.php /opt/sip/config/ConfiguracaoSip.php 19 | fi 20 | 21 | # Ajustes de permissões diversos para desenvolvimento do SEI 22 | chmod +x /opt/sei/bin/pdfboxmerge.jar 23 | mkdir -p /opt/sip/temp 24 | mkdir -p /opt/sei/temp 25 | chmod -R 777 /opt/sei/temp 26 | chmod -R 777 /opt/sip/temp 27 | chmod -R 777 /var/sei/arquivos 28 | 29 | # Inicialização das rotinas de agendamento 30 | printenv | sed 's|^|export |' | sed 's|=|="|' | sed 's|$|"|' > /root/cronenv.sh 31 | chown -R root:root /etc/cron.d/ 32 | chmod 0644 /etc/cron.d/sei 33 | /usr/sbin/crond start -p 34 | 35 | \cp /opt2/remi.tgz /opt/ 36 | cd /opt && tar -xvzf remi.tgz 37 | rm -rf remi.tgz 38 | cd - 39 | 40 | set +e 41 | # Ver issue #19 42 | if [ "$DATABASE_TYPE" = "SqlServer" ]; then 43 | ln -s /opt2/microsoft /opt/microsoft 44 | fi 45 | set -e 46 | 47 | if [ "$DATABASE_TYPE" = "SqlServer" ]; then 48 | 49 | set +e 50 | grep "'Encrypt' => false" /opt/infra/infra_php/InfraSqlServer.php 51 | e=$? 52 | set -e 53 | 54 | if [ ! "$e" = "0" ]; then 55 | sed -i "s|MultipleActiveResultSets' => false,|MultipleActiveResultSets' => false,'Encrypt' => false,|" /opt/infra/infra_php/InfraSqlServer.php 56 | fi 57 | 58 | fi 59 | 60 | # Atualização do endereço de host da aplicação 61 | HOST_URL=${HOST_URL:-"http://localhost:8000"} 62 | SEI_DATABASE_NAME=${SEI_DATABASE_NAME:-"sei"} 63 | SEI_DATABASE_USER=${SEI_DATABASE_USER:-"root"} 64 | SEI_DATABASE_PASSWORD=${SEI_DATABASE_PASSWORD:-"P@ssword"} 65 | SIP_DATABASE_NAME=${SIP_DATABASE_NAME:-"sip"} 66 | SIP_DATABASE_USER=${SIP_DATABASE_USER:-"root"} 67 | SIP_DATABASE_PASSWORD=${SIP_DATABASE_PASSWORD:-"P@ssword"} 68 | 69 | # Atualizar os endereços de host definidos para na inicialização e sincronização de sequências 70 | php -r " 71 | require_once '/opt/sip/web/Sip.php'; 72 | \$conexao = BancoSip::getInstance(); 73 | \$conexao->abrirConexao(); 74 | \$conexao->executarSql(\"update sistema set pagina_inicial='$HOST_URL/sip' where sigla='SIP'\"); 75 | \$conexao->executarSql(\"update sistema set pagina_inicial='$HOST_URL/sei/inicializar.php' where sigla='SEI'\"); 76 | \$conexao->executarSql(\"update sistema set web_service='$HOST_URL/sei/controlador_ws.php?servico=sip' where sigla='SEI'\"); 77 | " || exit 1 78 | 79 | 80 | # Apaga o PID antes de reinicar o servidor 81 | rm -f /run/httpd/httpd.pid 82 | # Inicialização do servidor web 83 | /usr/sbin/php-fpm && /usr/sbin/httpd -DFOREGROUND 84 | -------------------------------------------------------------------------------- /containers/app/app-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-centos7:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ARG IMAGEM_APP_PACOTEMYSQL_PRESENTE=true 10 | ARG IMAGEM_APP_PACOTESQLSERVER_PRESENTE=true 11 | ARG IMAGEM_APP_PACOTEORACLE_PRESENTE=true 12 | ARG IMAGEM_APP_PACOTEPOSTGRES_PRESENTE=true 13 | 14 | ENV TERM="xterm" \ 15 | LANG="pt_BR.ISO-8859-1" 16 | 17 | ADD assets /tmp/assets 18 | 19 | RUN /tmp/assets/copy-packages.sh && \ 20 | /tmp/assets/install.sh && \ 21 | rm -rf /tmp/assets -------------------------------------------------------------------------------- /containers/app/app-base/assets/ca-certIN.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIHAjCCBOqgAwIBAgIJAJVIeKgiEmNTMA0GCSqGSIb3DQEBDQUAMIGYMQswCQYD 3 | VQQGEwJCUjETMBEGA1UECgwKSUNQLUJyYXNpbDE9MDsGA1UECww0SW5zdGl0dXRv 4 | IE5hY2lvbmFsIGRlIFRlY25vbG9naWEgZGEgSW5mb3JtYWNhbyAtIElUSTE1MDMG 5 | A1UEAwwsQXV0b3JpZGFkZSBDZXJ0aWZpY2Fkb3JhIFJhaXogQnJhc2lsZWlyYSB2 6 | MTAwHhcNMjAwMzEyMTkzMTQyWhcNMzIwNzAxMTIwMDU5WjCBjDELMAkGA1UEBhMC 7 | QlIxEzARBgNVBAoMCklDUC1CcmFzaWwxNTAzBgNVBAsMLEF1dG9yaWRhZGUgQ2Vy 8 | dGlmaWNhZG9yYSBSYWl6IEJyYXNpbGVpcmEgdjEwMTEwLwYDVQQDDChBdXRvcmlk 9 | YWRlIENlcnRpZmljYWRvcmEgZG8gU0VSUFJPIFNTTHYxMIICIjANBgkqhkiG9w0B 10 | AQEFAAOCAg8AMIICCgKCAgEA61jQVBX27GVzyZkJuyrEezqjBGdLSJDFRyGdwxbm 11 | 8Ntr0AA8blhDaN5ASDOjqDESMA7xF38znfkZWBMLxJ3Ob0271W6G9bqgTwp/svhZ 12 | s91UcbZW6sB7gyxzMTGWLxcFMeBrurM0QpMVsp8hDH5Suv5rfP0YB9brz60k104u 13 | HG625rAcbRKHn7XsWJ1ZUQcwRzx1g0L1NlUKpsk0+eOAxTcVSVRTO33k+n6Gve83 14 | 4MXMiG6Orved4isnEvQnl4AecCXOuUuM3vXZ+kdJGTpNy1HOy0coFdKCJSSCxU/y 15 | TbTiAiRJTc8rbvor3I7k7wR4ZDR8alDbW/Sbw1JEMtbQqMOXEOV7iEUIub0/uNT2 16 | g0oM4pu8DAxhIwy2YQCpjfCbzYu2bf1nabuOEQ2B4mFt/zgoxa5FLsM+0IjpCi8u 17 | z9RqLvYFo9pIy5BTi7JMkVfbgqcOv7vkQf3xF7sODdInCVRIbB0R6xpHm+bpitx9 18 | t5ip+Sf24QFlKbjy0gwVAnaEyf/iQF+t8qgcFBO65kyfH/2vs6iYg5TNhFKtjpqQ 19 | iTyI7YkRkfTbLFdcgZbiRUUs5TFi0BkS4PAWupO1GgV9sJdk9gm3Z+KNZDgoAnu7 20 | Cvhq1JXt6t7qO96WzBx9q9hi7T6eld1VFrV5Ya5kxM9Lgh+XcBDwfnDLI1Yoozbd 21 | MbkCAwEAAaOCAVcwggFTMIGtBgNVHSAEgaUwgaIwTwYGYEwBAYEJMEUwQwYIKwYB 22 | BQUHAgEWN2h0dHBzOi8vcmVwb3NpdG9yaW8uc2VycHJvLmdvdi5ici9kb2NzL2Rw 23 | Y3NlcnByb3NzbC5wZGYwTwYGYEwBAgFpMEUwQwYIKwYBBQUHAgEWN2h0dHBzOi8v 24 | cmVwb3NpdG9yaW8uc2VycHJvLmdvdi5ici9kb2NzL2RwY3NlcnByb3NzbC5wZGYw 25 | QAYDVR0fBDkwNzA1oDOgMYYvaHR0cDovL2FjcmFpei5pY3BicmFzaWwuZ292LmJy 26 | L0xDUmFjcmFpenYxMC5jcmwwHwYDVR0jBBgwFoAUdPN+//yfU3rxfOurPqSm2hi6 27 | RWMwHQYDVR0OBBYEFK0WT0vxDL7CiqKFGNcNRiWTIuPNMA8GA1UdEwEB/wQFMAMB 28 | Af8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBDQUAA4ICAQCDvWkOYakalAHB 29 | 3ZcifI9yLyuTtjR8eYXlfDesYr7zMFVlmduVghCgueBMZxmht9BpLq9/ceBWu1q8 30 | sKge5oNNyySPmBJFe+CLjtB7Z1Ljk0Q/7A59lMCDZajojJlSEnH6pdhxA1JD58E0 31 | dGsom3SufuBWxdNfgsvpQNXDoKp48VlkyL4DKFCdJExtzuR5IlcQbB1FrmB5m2zo 32 | GG6j7UdoevmikIv01la+8kyn7CF5aNubRE0cfwxulik5LNM1uLIwfUVwYbbQiB8z 33 | baLUOS2lU/pYr+seLQ7VBPHps/guGB9hKei/Df49KWjDVplu3+AuZhBHqiK533VJ 34 | f9Uwv3Rvx8FCobT54OCrAVfnFs8F6sM3dPh1u7AbW3Ddpeo4oBH5kBA0feLvLk7v 35 | mOnOq64oPMMoj+g6x0B0v7tGqOrNBZK486MaU/uaJi+omx+Le9EfyIz39BbRYGdV 36 | JvO/9P8vn5XnNXsmqziw08ENLjHcrro48tRm3YX0/BUgoitjMUqyzlKTgQ8UOpfi 37 | XeJzqvxvUMO/HgZK9aknN3WQXWXxIFG01OHsEOTd2Nddqbrth5qmZE+1IxwEH+ys 38 | QQzlV0pnPL5K0bRuPCqvH4Jr0CmwV2PqD6dkjI/Sy77XDkTP8adAuYjIEynBoQ0b 39 | tqY/0rJPT3dztepWAwRHhKbvO1yYkA== 40 | -----END CERTIFICATE----- -------------------------------------------------------------------------------- /containers/app/app-base/assets/copy-packages.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | mkdir -p /tmp/assets/pacotes 6 | cd /tmp/assets/pacotes 7 | 8 | curl -L -O \ 9 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/msttcore-fonts-2.0-3.noarch.rpm \ 10 | -O \ 11 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/oracle-instantclient12.2-basic-12.2.0.1.0-1.x86_64.rpm \ 12 | -O \ 13 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm \ 14 | -O \ 15 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/oracle-instantclient12.2-sqlplus-12.2.0.1.0-1.x86_64.rpm \ 16 | -O \ 17 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/uploadprogress.tgz \ 18 | -O \ 19 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/wkhtmltox-0.12.6-1.centos7.x86_64.rpm 20 | 21 | cd - -------------------------------------------------------------------------------- /containers/app/app-ci-agendador/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/app-ci:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ADD assets /tmp/assets 10 | 11 | 12 | RUN /tmp/assets/install.sh && \ 13 | rm -rf /tmp/assets 14 | 15 | ENTRYPOINT /entrypoint-agendador.sh 16 | -------------------------------------------------------------------------------- /containers/app/app-ci-agendador/assets/conf/mod-pen/supervisor.ini.template: -------------------------------------------------------------------------------- 1 | [program:monitoramento_tarefas_pen] 2 | command=/usr/bin/php -c /etc/php.ini /opt/sei/scripts/mod-pen/MonitoramentoTarefasPEN.php --monitorar --segundo-plano 3 | directory=/opt/sei/web 4 | user=root 5 | numprocs=1 6 | autostart=true 7 | autorestart=true 8 | startsecs=5 9 | startretries=10000000 10 | log_stdout=true 11 | log_stderr=true 12 | logfile_maxbytes=0 13 | logfile_backups=50 14 | logfile=/proc/1/fd/1 15 | stdout_logfile=/proc/1/fd/1 16 | stderr_logfile=/proc/1/fd/2 17 | stderr_events_enabled=true 18 | 19 | [program:processamento_tarefas_pen] 20 | command=/usr/bin/php -c /etc/php.ini /opt/sei/scripts/mod-pen/ProcessamentoTarefasPEN.php --worker=%(process_num)02d 21 | directory=/opt/sei/web 22 | process_name=%(program_name)s_%(process_num)02d 23 | numprocs=<> 24 | user=root 25 | autostart=true 26 | autorestart=true 27 | startsecs=5 28 | startretries=10000000 29 | log_stdout=true 30 | log_stderr=true 31 | logfile_backups=0 32 | logfile_maxbytes=10MB 33 | logfile=/proc/1/fd/1 34 | stdout_logfile=/proc/1/fd/1 35 | stderr_logfile=/proc/1/fd/2 36 | stderr_events_enabled=true -------------------------------------------------------------------------------- /containers/app/app-ci-agendador/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | yum -y update 6 | 7 | yum install -y \ 8 | cronie \ 9 | gearmand \ 10 | libgearman \ 11 | libgearman-devel \ 12 | php-pecl-gearman 13 | 14 | curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python 15 | 16 | 17 | #Instalação Supervisor 18 | pip install "supervisor>=4" 19 | mkdir -p /etc/supervisor/ 20 | #echo_supervisord_conf > /etc/supervisor/supervisord.conf 21 | mv /tmp/assets/conf/supervisord.conf /etc/supervisor/supervisord.conf 22 | mv /tmp/assets/conf/mod-pen/supervisor.ini.template /etc/supervisor/ 23 | mv /tmp/assets/scripts-e-automatizadores/entrypoint-agendador.sh / 24 | chmod +x /entrypoint-agendador.sh 25 | 26 | 27 | yum clean all 28 | rm -rf /var/cache/yum 29 | -------------------------------------------------------------------------------- /containers/app/app-ci/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-app:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ADD assets /tmp/assets 10 | 11 | ARG GITPASS_REPO_MODULOS 12 | ARG GITUSER_REPO_MODULOS 13 | 14 | RUN /tmp/assets/install.sh && \ 15 | rm -rf /tmp/assets 16 | 17 | EXPOSE 80 18 | EXPOSE 443 -------------------------------------------------------------------------------- /containers/app/app-ci/assets/conf/ConfiguracaoSip.php: -------------------------------------------------------------------------------- 1 | array( 17 | 'URL' => getenv('APP_PROTOCOLO').'://'.getenv('APP_HOST').'/sip', 18 | 'Producao' => true), 19 | 20 | 'PaginaSip' => array('NomeSistema' => 'SIP'), 21 | 22 | 'SessaoSip' => array( 23 | 'SiglaOrgaoSistema' => getenv('APP_ORGAO'), 24 | 'SiglaSistema' => 'SIP', 25 | 'PaginaLogin' => getenv('APP_PROTOCOLO').'://'.getenv('APP_HOST').'/sip/login.php', 26 | 'SipWsdl' => getenv('APP_PROTOCOLO').'://'.getenv('APP_HOST').'/sip/controlador_ws.php?servico=sip', 27 | 'ChaveAcesso' => getenv('APP_SIP_CHAVE_ACESSO'), //ATEN��O: gerar uma nova chave para o SIP ap�s a instala��o (ver documento de instala��o) 28 | 'https' => (getenv('APP_PROTOCOLO') == 'https' ? true : false)), 29 | 30 | 'BancoSip' => array( 31 | 'Servidor' => getenv('APP_DB_HOST'), 32 | 'Porta' => getenv('APP_DB_PORTA'), 33 | 'Banco' => getenv('APP_DB_SIP_BASE'), 34 | 'Usuario' => getenv('APP_DB_SIP_USERNAME'), 35 | 'Senha' => getenv('APP_DB_SIP_PASSWORD'), 36 | 'UsuarioScript' => getenv('APP_DB_SIP_USERNAME'), 37 | 'SenhaScript' => getenv('APP_DB_SIP_PASSWORD'), 38 | 'Tipo' => getenv('APP_DB_TIPO')), //MySql, SqlServer, Oracle ou PostgreSql 39 | 40 | /* 41 | 'BancoAuditoriaSip' => array( 42 | 'Servidor' => '[Servidor BD]', 43 | 'Porta' => '', 44 | 'Banco' => '', 45 | 'Usuario' => '', 46 | 'Senha' => '', 47 | 'Tipo' => ''), //MySql, SqlServer, Oracle ou PostgreSql 48 | */ 49 | 50 | 'CacheSip' => array('Servidor' => 'memcached', 51 | 'Porta' => '11211'), 52 | 53 | 'InfraMail' => array( 54 | 'Tipo' => '2', //1 = sendmail (neste caso n�o � necess�rio configurar os atributos abaixo), 2 = SMTP 55 | 'Servidor' => 'smtp', 56 | 'Porta' => '25', 57 | 'Codificacao' => '8bit', //8bit, 7bit, binary, base64, quoted-printable 58 | 'MaxDestinatarios' => 999, //numero maximo de destinatarios por mensagem 59 | 'MaxTamAnexosMb' => 999, //tamanho maximo dos anexos em Mb por mensagem 60 | 'Seguranca' => '', //TLS, SSL ou vazio 61 | 'Autenticar' => false, //se true ent�o informar Usuario e Senha 62 | 'Usuario' => '', 63 | 'Senha' => '', 64 | 'Protegido' => '' //campo usado em desenvolvimento, se tiver um email preenchido entao todos os emails enviados terao o destinatario ignorado e substitu�do por este valor (evita envio incorreto de email) 65 | ) 66 | ); 67 | } 68 | } 69 | ?> 70 | -------------------------------------------------------------------------------- /containers/app/app-ci/assets/conf/sei.conf: -------------------------------------------------------------------------------- 1 | KeepAlive On 2 | MaxKeepAliveRequests 100 3 | KeepAliveTimeout 15 4 | 5 | Alias "/sei" "/opt/sei/web" 6 | Alias "/sip" "/opt/sip/web" 7 | Alias "/infra_css" "/opt/infra/infra_css" 8 | Alias "/infra_js" "/opt/infra/infra_js" 9 | 10 | SetEnvIfNoCase user-agent "Microsoft Data Access Internet Publishing Provider Protocol Discovery" bad_bot=1 11 | 12 | Order Allow,Deny 13 | Allow from all 14 | Deny from env=bad_bot 15 | 16 | 17 | 18 | 19 | DocumentRoot /var/www/html 20 | 21 | ServerAdmin admin@dominio.gov.br 22 | ServerName localhost 23 | 24 | DirectoryIndex index.php index.html 25 | IndexIgnore * 26 | 27 | EnableSendfile Off 28 | HostnameLookups Off 29 | ServerSignature Off 30 | AddDefaultCharset iso-8859-1 31 | 32 | # Bloqueia acesso à qualquer arquivo ou diretório externo ao DocumentRoot 33 | 34 | AllowOverride None 35 | Require all denied 36 | 37 | 38 | 39 | AllowOverride None 40 | Options None 41 | Require all granted 42 | 43 | 44 | 45 | 46 | 47 | 48 | SSLEngine on 49 | SSLCertificateFile /etc/pki/tls/certs/sei.crt 50 | SSLCertificateChainFile /etc/pki/tls/certs/sei-ca.pem 51 | SSLCertificateKeyFile /etc/pki/tls/private/sei.key 52 | 53 | DocumentRoot /var/www/html 54 | 55 | ServerAdmin admin@dominio.gov.br 56 | ServerName localhost 57 | 58 | DirectoryIndex index.php index.html 59 | IndexIgnore * 60 | 61 | EnableSendfile Off 62 | HostnameLookups Off 63 | ServerSignature Off 64 | AddDefaultCharset iso-8859-1 65 | 66 | # Bloqueia acesso à qualquer arquivo ou diretório externo ao DocumentRoot 67 | 68 | AllowOverride None 69 | Require all denied 70 | 71 | 72 | 73 | AllowOverride None 74 | Options None 75 | Require all granted 76 | 77 | 78 | -------------------------------------------------------------------------------- /containers/app/app-ci/assets/conf/sei.ini: -------------------------------------------------------------------------------- 1 | [php] 2 | include_path = ".:/php/includes:/opt/infra/infra_php" 3 | default_charset = "iso-8859-1" 4 | session.gc_maxlifetime = 28800 5 | short_open_tag = On 6 | default_socket_timeout = 60 7 | max_input_vars = 2000 8 | magic_quotes_gpc = 0 9 | magic_quotes_runtime = 0 10 | magic_quotes_sybase = 0 11 | html_errors = 0 12 | always_populate_raw_post_data = -1 13 | 14 | post_max_size = 505M 15 | upload_max_filesize = 500M 16 | 17 | ;openssl.cafile=/etc/ssl/certs/cacert.pem 18 | ;curl.cainfo=/etc/ssl/certs/cacert.pem 19 | 20 | 21 | ; Retirados da configuração do php.ini de produção. Verificar necessidade 22 | ; y2k_compliance = On 23 | ; serialize_precision = 100 24 | ; allow_call_time_pass_reference = Off 25 | ; safe_mode = Off 26 | ; safe_mode_gid = Off 27 | ; safe_mode_include_dir = 28 | ; safe_mode_exec_dir = 29 | ; safe_mode_allowed_env_vars = PHP_ 30 | ; safe_mode_protected_env_vars = LD_LIBRARY_PATH 31 | ; error_reporting = E_ALL & ~E_DEPRECATED 32 | ; html_errors = Off 33 | ; register_globals = Off 34 | ; register_long_arrays = Off -------------------------------------------------------------------------------- /containers/app/app-ci/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | cp /tmp/assets/conf/sei.ini /etc/php.d/ 6 | cp /tmp/assets/conf/sei.conf /etc/httpd/conf.d/ 7 | 8 | cp /tmp/assets/scripts-e-automatizadores/entrypoint.sh / 9 | cp /tmp/assets/scripts-e-automatizadores/entrypoint-atualizador.sh / 10 | 11 | /tmp/assets/scripts-e-automatizadores/clone-modules.sh 12 | 13 | mkdir -p /sei/controlador-instalacoes/ /sei/arquivos_externos_sei/ /sei/certs 14 | mkdir -p /sei/files/conf /sei/files/scripts-e-automatizadores/modulos 15 | mv /tmp/assets/conf/ConfiguracaoSEI.php /sei/files/conf 16 | mv /tmp/assets/conf/ConfiguracaoSip.php /sei/files/conf 17 | mv /tmp/assets/scripts-e-automatizadores/openldap /tmp/assets/scripts-e-automatizadores/misc /sei/files/scripts-e-automatizadores/ 18 | mv /tmp/assets/scripts-e-automatizadores/modulos/* /sei/files/scripts-e-automatizadores/modulos/ 19 | -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/clone-modules.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | mkdir -p /sei-modulos 4 | 5 | cd /sei-modulos 6 | 7 | git clone https://github.com/supergovbr/mod-sei-estatisticas.git 8 | git clone https://github.com/supergovbr/mod-sei-pen.git 9 | git clone https://github.com/supergovbr/mod-wssei.git 10 | git clone https://github.com/anatelgovbr/mod-sei-peticionamento.git peticionamento 11 | git clone https://github.com/supergovbr/mod-sei-protocolo-integrado.git 12 | 13 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-resposta.git 14 | cd mod-sei-resposta 15 | git remote set-url origin https://github.com/pengovbr/mod-sei-resposta.git 16 | cd .. 17 | 18 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-incom.git 19 | cd mod-sei-incom 20 | git remote set-url origin https://github.com/pengovbr/mod-sei-incom.git 21 | cd .. 22 | 23 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-gestao-documental.git 24 | cd mod-gestao-documental 25 | git remote set-url origin https://github.com/pengovbr/mod-gestao-documental.git 26 | cd .. 27 | 28 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-loginunico.git 29 | cd mod-sei-loginunico 30 | git remote set-url origin https://github.com/pengovbr/mod-sei-loginunico.git 31 | cd .. 32 | 33 | git clone https://${GITUSER_REPO_MODULOS}:${GITPASS_REPO_MODULOS}@github.com/pengovbr/mod-sei-assinatura-avancada.git 34 | cd mod-sei-assinatura-avancada 35 | git remote set-url origin https://github.com/pengovbr/mod-sei-assinatura-avancada.git 36 | cd .. -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/misc/cadastrarMultiorgao.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 11 | InfraDebug::getInstance()->setBolDebugInfra(false); 12 | InfraDebug::getInstance()->setBolEcho(true); 13 | 14 | $conexao = BancoSip::getInstance(); 15 | 16 | $siglas = getenv('APP_ORGAOS_ADICIONAIS_SIGLA'); 17 | $nomes = getenv('APP_ORGAOS_ADICIONAIS_NOME'); 18 | 19 | 20 | if( $siglas == "" || $nomes == "" ){ 21 | 22 | echo "Siglas ou Nomes dos Orgaos nao informados completamente, pulando etapa de configuracao multiorgaos"; 23 | echo ""; 24 | exit(0); 25 | 26 | } 27 | 28 | $arrSiglas = explode("/", $siglas); 29 | $arrNomes = explode("/", $nomes); 30 | 31 | if( count($arrSiglas) != count($arrNomes) ){ 32 | 33 | echo "Siglas ou Nomes dos Orgaos nao informados corretamente. Erro na correlacao de sigla/nome."; 34 | echo ""; 35 | echo "Pulando etapa de configuracao de multiorgaos"; 36 | echo ""; 37 | exit(0); 38 | 39 | } 40 | 41 | for ($i=0; $i < count($arrSiglas) ; $i++) { 42 | 43 | $sigla = $arrSiglas[$i]; 44 | $nome = $arrNomes[$i]; 45 | $ordem = $i + 1; 46 | 47 | echo $sigla; 48 | echo $nome; 49 | 50 | $objOrgaoDTO = new OrgaoDTO(); 51 | $objOrgaoDTO->setNumIdOrgao(null); 52 | $objOrgaoDTO->setStrSigla($sigla); 53 | $objOrgaoDTO->setStrDescricao($nome); 54 | $objOrgaoDTO->setNumOrdem($ordem); 55 | 56 | $objOrgaoDTO->setStrSinAutenticar('N'); 57 | $objOrgaoDTO->setStrSinAtivo('S'); 58 | 59 | $arrObjRelOrgaoAutenticacaoDTO = array(); 60 | $objOrgaoDTO->setArrObjRelOrgaoAutenticacaoDTO($arrObjRelOrgaoAutenticacaoDTO); 61 | 62 | $objOrgaoRN = new OrgaoRN(); 63 | $objOrgaoDTO = $objOrgaoRN->cadastrar($objOrgaoDTO); 64 | 65 | echo "Criacao do orgao $sigla feita com sucesso\n"; 66 | 67 | } 68 | 69 | 70 | 71 | ?> -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/misc/enableservicePD.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 12 | InfraDebug::getInstance()->setBolDebugInfra(false); 13 | InfraDebug::getInstance()->setBolEcho(true); 14 | 15 | $conexao = BancoSEI::getInstance(); 16 | $conexao->setBolScript(true); 17 | 18 | $SIGLA_SISTEMA=getenv('SERVICO_PD_SIGLA') ?: "GOV.BR"; 19 | $SERVICO_NOME=getenv('SERVICO_PD_NOME') ?: "Protocolo.GOV.BR"; 20 | $STR_OPERACOES=getenv('SERVICO_PD_OPERACOES') ?: "3,2,15,0,1"; 21 | 22 | 23 | $objUsuarioDTO = new UsuarioDTO(); 24 | $objUsuarioDTO->setNumIdUsuario(null); 25 | $objUsuarioDTO->setNumIdOrgao(0); 26 | $objUsuarioDTO->setStrIdOrigem(null); 27 | $objUsuarioDTO->setStrSigla($SIGLA_SISTEMA); 28 | $objUsuarioDTO->setStrNome($SIGLA_SISTEMA); 29 | $objUsuarioDTO->setNumIdContato(null); 30 | $objUsuarioDTO->setStrStaTipo(UsuarioRN::$TU_SISTEMA); 31 | $objUsuarioDTO->setStrSenha(null); 32 | try{ 33 | $objUsuarioDTO->setStrSinAcessibilidade('N'); 34 | }catch(Exception $e){;} 35 | $objUsuarioDTO->setStrSinAtivo('S'); 36 | 37 | $objUsuarioRN = new UsuarioRN(); 38 | $objUsuarioDTO = $objUsuarioRN->cadastrarRN0487($objUsuarioDTO); 39 | 40 | $id_usuario=$objUsuarioDTO->getNumIdUsuario(); 41 | 42 | $objServicoDTO = new ServicoDTO(); 43 | $objServicoDTO->setNumIdServico(null); 44 | $objServicoDTO->setNumIdUsuario($id_usuario); 45 | $objServicoDTO->setStrIdentificacao($SERVICO_NOME); 46 | $objServicoDTO->setStrDescricao($SERVICO_NOME); 47 | $objServicoDTO->setStrServidor("*"); 48 | $objServicoDTO->setStrSinLinkExterno("S"); 49 | $objServicoDTO->setStrSinServidor("S"); 50 | $objServicoDTO->setStrSinChaveAcesso("N"); 51 | $objServicoDTO->setStrSinAtivo('S'); 52 | 53 | $objServicoRN = new ServicoRN(); 54 | $objServicoDTO = $objServicoRN->cadastrar($objServicoDTO); 55 | 56 | $id_servico = $objServicoDTO->getNumIdServico(); 57 | 58 | $arrOperacoes = explode(",", $STR_OPERACOES); 59 | 60 | foreach($arrOperacoes as $o){ 61 | $objOperacaoServicoDTO = new OperacaoServicoDTO(); 62 | $objOperacaoServicoDTO->setNumIdOperacaoServico(null); 63 | $objOperacaoServicoDTO->setNumIdServico($id_servico); 64 | $numStaOperacaoServico = $o; 65 | $objOperacaoServicoDTO->setNumStaOperacaoServico($numStaOperacaoServico); 66 | $objOperacaoServicoDTO->setNumIdTipoProcedimento(null); 67 | $objOperacaoServicoDTO->setNumIdSerie(null); 68 | $objOperacaoServicoDTO->setNumIdUnidade(null); 69 | $objOperacaoServicoRN = new OperacaoServicoRN(); 70 | $objOperacaoServicoDTO = $objOperacaoServicoRN->cadastrar($objOperacaoServicoDTO); 71 | } 72 | 73 | ?> -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/modulos/mod-sei-estatisticas/sei_gov_configurar_ambiente.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app/app-ci/assets/scripts-e-automatizadores/modulos/mod-sei-estatisticas/sei_gov_configurar_ambiente.php -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/modulos/mod-sei-incom/mod-sei-incom.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 12 | InfraDebug::getInstance()->setBolDebugInfra(false); 13 | InfraDebug::getInstance()->setBolEcho(true); 14 | 15 | $MODULO_INCOM_VEICULOID = getenv('MODULO_INCOM_VEICULOID') ?: '2'; 16 | $MODULO_INCOM_SERIEID = getenv('MODULO_INCOM_SERIEID') ?: '10'; 17 | $MODULO_INCOM_SIORG = getenv('MODULO_INCOM_SIORG') ?: '235876'; 18 | $MODULO_INCOM_URLWS = getenv('MODULO_INCOM_URLWS') ?: 'https://seiwsincom2.in.gov.br/seiwsincom/services/servicoIN?wsdl'; 19 | $MODULO_INCOM_USERWS = getenv('MODULO_INCOM_USERWS') ?: 'XXX'; 20 | $MODULO_INCOM_PASSWS = getenv('MODULO_INCOM_PASSWS') ?: 'XXX'; 21 | $MODULO_INCOM_INCLUSAOPUBLICACAO = getenv('MODULO_INCOM_INCLUSAOPUBLICACAO') ?: 'S'; 22 | 23 | $conexao = BancoSEI::getInstance(); 24 | $conexao->abrirConexao(); 25 | 26 | $objMdIncomConfiguracaoDTO = new MdIncomConfiguracaoDTO(); 27 | $objMdIncomConfiguracaoDTO->setNumIdConfiguracao(1); 28 | $objMdIncomConfiguracaoDTO->setNumIdVeiculoPublicacao($MODULO_INCOM_VEICULOID); 29 | $objMdIncomConfiguracaoDTO->setNumIdSerie($MODULO_INCOM_SERIEID); 30 | $objMdIncomConfiguracaoDTO->setNumIdSiorgOrgao($MODULO_INCOM_SIORG); 31 | $objMdIncomConfiguracaoDTO->setStrWebService($MODULO_INCOM_URLWS); 32 | $objMdIncomConfiguracaoDTO->setStrUsuarioWebservice($MODULO_INCOM_USERWS); 33 | $objMdIncomConfiguracaoDTO->setStrSenhaWebservice($MODULO_INCOM_PASSWS); 34 | $objMdIncomConfiguracaoDTO->setStrSinInclusaoPublicacao($MODULO_INCOM_INCLUSAOPUBLICACAO); 35 | 36 | try{ 37 | $objMdIncomConfiguracaoBD = new MdIncomConfiguracaoBD($conexao); 38 | $ret = $objMdIncomConfiguracaoBD->alterar($objMdIncomConfiguracaoDTO); 39 | }catch(Exception $e){ 40 | echo "Erro ao configurar modulo INCOM. Verifique. Nao vamos interromper a execucao."; 41 | echo "Erro: " . print_r($e, true); 42 | echo ""; 43 | } 44 | 45 | ?> -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/modulos/mod-sei-pen/mod-sei-pen.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | 4 | if [ -z "$MODULO_PEN_REPOSITORIO_ORIGEM" ]; then 5 | echo "Nenhum valor informado para MODULO_PEN_REPOSITORIO_ORIGEM, n sera feita a configuracao automatica para esse parametro" 6 | else 7 | echo "Configurando MODULO_PEN_REPOSITORIO_ORIGEM" 8 | php -r " 9 | require_once '/opt/sei/web/SEI.php'; 10 | \$conexao = BancoSEI::getInstance(); 11 | \$conexao->abrirConexao(); 12 | \$conexao->executarSql(\"UPDATE md_pen_parametro SET valor = $MODULO_PEN_REPOSITORIO_ORIGEM WHERE nome = 'PEN_ID_REPOSITORIO_ORIGEM'\"); 13 | " 14 | fi 15 | 16 | if [ -z "$MODULO_PEN_TIPO_PROCESSO_EXTERNO" ]; then 17 | echo "Nenhum valor informado para MODULO_PEN_TIPO_PROCESSO_EXTERNO, nao sera feita a config automatica para esse parametro" 18 | else 19 | echo "Configurando MODULO_PEN_TIPO_PROCESSO_EXTERNO" 20 | php -r " 21 | require_once '/opt/sei/web/SEI.php'; 22 | \$conexao = BancoSEI::getInstance(); 23 | \$conexao->abrirConexao(); 24 | \$conexao->executarSql(\"UPDATE md_pen_parametro SET valor = $MODULO_PEN_TIPO_PROCESSO_EXTERNO WHERE nome = 'PEN_TIPO_PROCESSO_EXTERNO'\"); 25 | " 26 | fi 27 | 28 | if [ -z "$MODULO_PEN_UNIDADE_GERADORA" ]; then 29 | echo "Nenhum valor informado para MODULO_PEN_UNIDADE_GERADORA, nao sera feita a config automatica para esse parametro" 30 | else 31 | echo "Configurando MODULO_PEN_UNIDADE_GERADORA" 32 | php -r " 33 | require_once '/opt/sei/web/SEI.php'; 34 | \$conexao = BancoSEI::getInstance(); 35 | \$conexao->abrirConexao(); 36 | \$conexao->executarSql(\"UPDATE md_pen_parametro SET valor = $MODULO_PEN_UNIDADE_GERADORA WHERE nome = 'PEN_UNIDADE_GERADORA_DOCUMENTO_RECEBIDO'\"); 37 | " 38 | 39 | fi 40 | 41 | if [ -z "$MODULO_PEN_UNIDADE_ASSOCIACAO_SEI" ] || [ -z "$MODULO_PEN_UNIDADE_ASSOCIACAO_PEN" ]; then 42 | echo "Nenhum valor informado para MODULO_PEN_UNIDADE_ASSOCIACAO_PEN ou MODULO_PEN_UNIDADE_ASSOCIACAO_SEI, nao sera feita a config automatica para esse parametro" 43 | else 44 | echo "Configurando MODULO_PEN_UNIDADE_ASSOCIACAO_SEI e MODULO_PEN_UNIDADE_ASSOCIACAO_PEN " 45 | php -r " 46 | require_once '/opt/sei/web/SEI.php'; 47 | \$conexao = BancoSEI::getInstance(); 48 | \$conexao->abrirConexao(); 49 | \$conexao->executarSql(\"insert ignore into md_pen_unidade(id_unidade, id_unidade_rh) values ($MODULO_PEN_UNIDADE_ASSOCIACAO_SEI, $MODULO_PEN_UNIDADE_ASSOCIACAO_PEN)\"); 50 | " 51 | 52 | fi -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/modulos/mod-sei-resposta/mod-sei-resposta.php: -------------------------------------------------------------------------------- 1 | setBolLigado(true); 12 | InfraDebug::getInstance()->setBolDebugInfra(false); 13 | InfraDebug::getInstance()->setBolEcho(true); 14 | 15 | //$conexao = BancoSEI::getInstance(); 16 | //$conexao->setBolScript(true); 17 | 18 | $MODULO_RESPOSTA_SISTEMA_ID = getenv(' MODULO_RESPOSTA_SISTEMA_ID') ?: 'a:1:{i:0;s:1:"8";}'; 19 | $MODULO_RESPOSTA_DOCUMENTO_ID = getenv('MODULO_RESPOSTA_DOCUMENTO_ID') ?: "153"; 20 | 21 | $objMdRespostaParametroDTO = new MdRespostaParametroDTO(); 22 | $objMdRespostaParametroDTO->setStrNome("PARAM_TIPO_DOCUMENTO"); 23 | //$objMdRespostaParametroDTO->setStrNome(MDRespostaParametroRN::PARAM_TIPO_DOCUMENTO); 24 | $objMdRespostaParametroDTO->setStrValor($MODULO_RESPOSTA_DOCUMENTO_ID); 25 | $arrObjMdRespostaParametroDTO[] = $objMdRespostaParametroDTO; 26 | 27 | $objMdRespostaParametroDTO = new MdRespostaParametroDTO(); 28 | //$objMdRespostaParametroDTO->setStrNome(MDRespostaParametroRN::PARAM_SISTEMA); 29 | $objMdRespostaParametroDTO->setStrNome('PARAM_SISTEMA'); 30 | $objMdRespostaParametroDTO->setStrValor($MODULO_RESPOSTA_SISTEMA_ID); 31 | $arrObjMdRespostaParametroDTO[] = $objMdRespostaParametroDTO; 32 | 33 | $objMdRespostaParametroRN = new MdRespostaParametroRN(); 34 | try{ 35 | $objMdRespostaParametroDTO = $objMdRespostaParametroRN->atribuir($arrObjMdRespostaParametroDTO); 36 | }catch(Exception $e){ 37 | echo "Erro ao configurar modulo de resposta. Verifique. Nao vamos interromper a execucao."; 38 | echo "Erro: " . print_r($e, true); 39 | echo ""; 40 | } 41 | 42 | 43 | ?> -------------------------------------------------------------------------------- /containers/app/app-ci/assets/scripts-e-automatizadores/openldap/sip-config-openldap-desligar.php: -------------------------------------------------------------------------------- 1 | abrirConexao(); 7 | 8 | 9 | $objOrgaoDTO = new OrgaoDTO(); 10 | $objOrgaoDTO->setNumIdOrgao(0); 11 | $objOrgaoDTO->setStrSinAutenticar('N'); 12 | $objOrgaoBD = new OrgaoBD(BancoSip::getInstance()); 13 | $objOrgaoBD->alterar($objOrgaoDTO); 14 | 15 | ?> -------------------------------------------------------------------------------- /containers/app/app-dev/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container APP com os pacotes basicos 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-app:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ADD assets /tmp/assets 10 | 11 | RUN /tmp/assets/install.sh && \ 12 | rm -rf /tmp/assets 13 | 14 | EXPOSE 8000 15 | CMD ["/command.sh"] -------------------------------------------------------------------------------- /containers/app/app-dev/assets/conf/cron.conf: -------------------------------------------------------------------------------- 1 | * * * * * root . /crond_env.sh; root /usr/bin/php -c /etc/php.ini /opt/sei/scripts/AgendamentoTarefaSEI.php 2>&1 >> /var/log/sei/agendamento_sei.log 2 | * * * * * root . /crond_env.sh; root /usr/bin/php -c /etc/php.ini /opt/sip/scripts/AgendamentoTarefaSip.php 2>&1 >> /var/log/sip/agendamento_sip.log 3 | 00 01 * * * root rm -rf /opt/sei/temp/* 4 | 00 01 * * * root rm -rf /opt/sip/temp/* -------------------------------------------------------------------------------- /containers/app/app-dev/assets/conf/deflate.conf: -------------------------------------------------------------------------------- 1 | 2 | SetOutputFilter DEFLATE 3 | 4 | 5 | 6 | ExpiresActive On 7 | ExpiresDefault "access plus 3 seconds" 8 | ExpiresByType text/html "access plus 3 seconds" 9 | ExpiresByType image/gif "access plus 2419200 seconds" 10 | ExpiresByType image/jpeg "access plus 2419200 seconds" 11 | ExpiresByType image/png "access plus 2419200 seconds" 12 | ExpiresByType image/svg+xml "access plus 2419200 seconds" 13 | ExpiresByType text/css "access plus 2419200 seconds" 14 | ExpiresByType text/javascript "access plus 2419200 seconds" 15 | ExpiresByType application/javascript "access plus 2419200 seconds" 16 | ExpiresByType application/x-javascript "access plus 2419200 seconds" 17 | 18 | 19 | 20 | AddOutputFilterByType DEFLATE text/html 21 | AddOutputFilterByType DEFLATE text/css 22 | AddOutputFilterByType DEFLATE text/javascript 23 | AddOutputFilterByType DEFLATE text/xml 24 | AddOutputFilterByType DEFLATE text/plain 25 | AddOutputFilterByType DEFLATE image/x-icon 26 | AddOutputFilterByType DEFLATE application/rss+xml 27 | AddOutputFilterByType DEFLATE application/javascript 28 | AddOutputFilterByType DEFLATE application/x-javascript 29 | AddOutputFilterByType DEFLATE application/xml 30 | AddOutputFilterByType DEFLATE application/xhtml+xml 31 | AddOutputFilterByType DEFLATE application/x-font 32 | AddOutputFilterByType DEFLATE application/x-font-truetype 33 | AddOutputFilterByType DEFLATE application/x-font-ttf 34 | AddOutputFilterByType DEFLATE application/x-font-otf 35 | AddOutputFilterByType DEFLATE application/font-woff 36 | AddOutputFilterByType DEFLATE application/x-font-woff 37 | AddOutputFilterByType DEFLATE application/x-font-woff2 38 | AddOutputFilterByType DEFLATE application/x-font-opentype 39 | AddOutputFilterByType DEFLATE application/vnd.ms-fontobject 40 | AddOutputFilterByType DEFLATE font/ttf 41 | AddOutputFilterByType DEFLATE font/otf 42 | AddOutputFilterByType DEFLATE font/eot 43 | AddOutputFilterByType DEFLATE font/woff 44 | AddOutputFilterByType DEFLATE font/woff2 45 | AddOutputFilterByType DEFLATE font/opentype 46 | 47 | -------------------------------------------------------------------------------- /containers/app/app-dev/assets/conf/info.php: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /containers/app/app-dev/assets/conf/sei.conf: -------------------------------------------------------------------------------- 1 | Listen 8000 2 | KeepAlive On 3 | MaxKeepAliveRequests 100 4 | KeepAliveTimeout 15 5 | 6 | Alias "/sei" "/opt/sei/web" 7 | Alias "/sip" "/opt/sip/web" 8 | Alias "/infra_css" "/opt/infra/infra_css" 9 | Alias "/infra_js" "/opt/infra/infra_js" 10 | 11 | SetEnvIfNoCase user-agent "Microsoft Data Access Internet Publishing Provider Protocol Discovery" bad_bot=1 12 | 13 | Order Allow,Deny 14 | Allow from all 15 | Deny from env=bad_bot 16 | 17 | 18 | 19 | DocumentRoot /var/www/html 20 | ServerAdmin admin@dominio.gov.br 21 | ServerName localhost 22 | 23 | DirectoryIndex index.php index.html 24 | IndexIgnore * 25 | EnableSendfile Off 26 | HostnameLookups Off 27 | ServerSignature Off 28 | AddDefaultCharset iso-8859-1 29 | 30 | 31 | AllowOverride None 32 | Require all denied 33 | 34 | 35 | 36 | AllowOverride None 37 | Options None 38 | Require all granted 39 | 40 | 41 | -------------------------------------------------------------------------------- /containers/app/app-dev/assets/conf/sei.ini: -------------------------------------------------------------------------------- 1 | [php] 2 | ; Parâmetros recomendados no Manual de Instalação 3 | include_path = ".:/php/includes:/opt/infra/infra_php" 4 | default_charset = "iso-8859-1" 5 | session.gc_maxlifetime = 28800 6 | short_open_tag = On 7 | default_socket_timeout = 60 8 | max_input_vars = 2000 9 | magic-quotes-gpc = 0 10 | magic_quotes_runtime = 0 11 | magic_quotes_sybase = 0 12 | post_max_size = 110M 13 | upload_max_filesize = 100M 14 | 15 | ; Parâmetros recomendados para ambiente de desenvolvimento 16 | error_reporting = E_ALL 17 | display_errors = On 18 | display_startup_errors = On 19 | html_errors = On 20 | always_populate_raw_post_data = -1 -------------------------------------------------------------------------------- /containers/app/app-dev/assets/conf/xdebug.ini: -------------------------------------------------------------------------------- 1 | ; Enable xdebug extension module 2 | zend_extension=/usr/lib64/php/modules/xdebug.so 3 | xdebug.mode=debug 4 | xdebug.client_host=localhost 5 | xdebug.client_port=9003 6 | xdebug.remote_handler=dbgp 7 | xdebug.discover_client_host=1 8 | xdebug.idekey=default -------------------------------------------------------------------------------- /containers/app/app-dev/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | mv /tmp/assets/scripts-e-automatizadores/command.sh \ 6 | /tmp/assets/scripts-e-automatizadores/ConfiguracaoSip.php \ 7 | /tmp/assets/scripts-e-automatizadores/ConfiguracaoSEI.php \ 8 | / 9 | 10 | chmod +x /command.sh 11 | 12 | yum -y update 13 | 14 | 15 | yum install -y http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm 16 | 17 | # Instalação de ferramentas utilitárias e dependências do SEI 18 | yum install -y build-essential libmcrypt httpd memcached openssl wget curl unzip gcc java-1.8.0-openjdk \ 19 | libxml2 crontabs mysql netstat net-tools vim git nc libgearman-dev libgearman-devel ffmpeg 20 | 21 | 22 | # Instalação do XDebug, versão 3 23 | pecl install xdebug-3.0.4 24 | 25 | # Configuração de permissão do diretório de arquivos 26 | mkdir -p /var/sei/arquivos 27 | chmod -R 777 /var/sei/arquivos 28 | 29 | # Configuração dos serviços de background do Cron 30 | mkdir /var/log/sei 31 | sed -i '/session required pam_loginuid.so/c\#session required pam_loginuid.so' /etc/pam.d/crond 32 | 33 | mkdir -p /etc/cron.d/sei 34 | 35 | cp /tmp/assets/conf/info.php /var/www/html/ 36 | cp /tmp/assets/conf/sei.ini /etc/php.d/ 37 | cp /tmp/assets/conf/sei.conf /etc/httpd/conf.d/ 38 | cp /tmp/assets/conf/deflate.conf /etc/httpd/conf.d/ 39 | cp /tmp/assets/conf/cron.conf /etc/cron.d/ 40 | cp /tmp/assets/conf/xdebug.ini /etc/php.d/ 41 | 42 | # Remover arquivos temporários 43 | yum clean all 44 | rm -rf /var/cache/yum -------------------------------------------------------------------------------- /containers/app/app-dev/assets/scripts-e-automatizadores/ConfiguracaoSEI.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app/app-dev/assets/scripts-e-automatizadores/ConfiguracaoSEI.php -------------------------------------------------------------------------------- /containers/app/app-dev/assets/scripts-e-automatizadores/command.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Atribuição dos parâmetros de configuração do SEI 4 | if [ -f /opt/sei/config/ConfiguracaoSEI.php ] && [ ! -f /opt/sei/config/ConfiguracaoSEI.php~ ]; then 5 | mv /opt/sei/config/ConfiguracaoSEI.php /opt/sei/config/ConfiguracaoSEI.php~ 6 | fi 7 | 8 | if [ ! -f /opt/sei/config/ConfiguracaoSEI.php ]; then 9 | cp /ConfiguracaoSEI.php /opt/sei/config/ConfiguracaoSEI.php 10 | fi 11 | 12 | # Atribuição dos parâmetros de configuração do SIP 13 | if [ -f /opt/sip/config/ConfiguracaoSip.php ] && [ ! -f /opt/sip/config/ConfiguracaoSip.php~ ]; then 14 | mv /opt/sip/config/ConfiguracaoSip.php /opt/sip/config/ConfiguracaoSip.php~ 15 | fi 16 | 17 | if [ ! -f /opt/sip/config/ConfiguracaoSip.php ]; then 18 | cp /ConfiguracaoSip.php /opt/sip/config/ConfiguracaoSip.php 19 | fi 20 | 21 | # Ajustes de permissões diversos para desenvolvimento do SEI 22 | chmod +x /opt/sei/bin/pdfboxmerge.jar 23 | mkdir -p /opt/sip/temp 24 | mkdir -p /opt/sei/temp 25 | chmod -R 777 /opt/sei/temp 26 | chmod -R 777 /opt/sip/temp 27 | chmod -R 777 /var/sei/arquivos 28 | 29 | # Inicialização das rotinas de agendamento 30 | printenv | sed 's/^\(.*\)$$/export \1/g' > /crond_env.sh 31 | chown root:root /etc/cron.d/sei 32 | chmod 0644 /etc/cron.d/sei 33 | crond 34 | 35 | # Atualização do endereço de host da aplicação 36 | HOST_URL=${HOST_URL:-"http://localhost:8000"} 37 | SEI_DATABASE_NAME=${SEI_DATABASE_NAME:-"sei"} 38 | SEI_DATABASE_USER=${SEI_DATABASE_USER:-"root"} 39 | SEI_DATABASE_PASSWORD=${SEI_DATABASE_PASSWORD:-"P@ssword"} 40 | SIP_DATABASE_NAME=${SIP_DATABASE_NAME:-"sip"} 41 | SIP_DATABASE_USER=${SIP_DATABASE_USER:-"root"} 42 | SIP_DATABASE_PASSWORD=${SIP_DATABASE_PASSWORD:-"P@ssword"} 43 | 44 | # Ver issue #19 45 | if [ "$DATABASE_TYPE" = "SqlServer" ]; then 46 | ln -s /opt2/microsoft /opt/microsoft 47 | fi 48 | 49 | # Atualizar os endereços de host definidos para na inicialização e sincronização de sequências 50 | php -r " 51 | require_once '/opt/sip/web/Sip.php'; 52 | \$conexao = BancoSip::getInstance(); 53 | \$conexao->abrirConexao(); 54 | \$conexao->executarSql(\"update sistema set pagina_inicial='$HOST_URL/sip' where sigla='SIP'\"); 55 | \$conexao->executarSql(\"update sistema set pagina_inicial='$HOST_URL/sei/inicializar.php' where sigla='SEI'\"); 56 | \$conexao->executarSql(\"update sistema set web_service='$HOST_URL/sei/controlador_ws.php?servico=sip' where sigla='SEI'\"); 57 | " || exit 1 58 | 59 | 60 | # Apaga o PID antes de reinicar o servidor 61 | rm -f /run/httpd/httpd.pid 62 | # Inicialização do servidor web 63 | /usr/sbin/httpd -DFOREGROUND 64 | -------------------------------------------------------------------------------- /containers/app/app-prd/comminganytime.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/containers/app/app-prd/comminganytime.txt -------------------------------------------------------------------------------- /containers/base-centos/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # SO Centos Oficial - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM centos:7 6 | 7 | RUN sed -i s/mirror.centos.org/vault.centos.org/g /etc/yum.repos.d/CentOS-*.repo && \ 8 | sed -i s/^#.*baseurl=http/baseurl=http/g /etc/yum.repos.d/CentOS-*.repo && \ 9 | sed -i s/^mirrorlist=http/#mirrorlist=http/g /etc/yum.repos.d/CentOS-*.repo && \ 10 | yum update -y -------------------------------------------------------------------------------- /containers/base-rocky93/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # SO Centos 9.3 - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM rockylinux:9.3 -------------------------------------------------------------------------------- /containers/databases/mariadb-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Mariadb Oficial - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM mariadb:10.5 -------------------------------------------------------------------------------- /containers/databases/mariadb-sei40/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Mariadb utilizado pelo SEI 3 | # construa antes a imagem base 4 | ################################################################################ 5 | 6 | ARG IMAGEM_BASE=processoeletronico/base-mariadb10.5:latest 7 | 8 | FROM ${IMAGEM_BASE} as builder 9 | 10 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 11 | 12 | ############################# INÍCIO DA INSTALAÇÃO ############################# 13 | ENV MYSQL_ROOT_PASSWORD=P@ssword 14 | 15 | COPY assets/my.cnf /etc/mysql/mariadb.conf.d/sei.cnf 16 | COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 17 | ADD ${GIT_DB_REF}/mysql/v4.0.0/sei_4_0_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 18 | ADD ${GIT_DB_REF}/mysql/v4.0.0/sip_4_0_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 19 | COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 20 | 21 | RUN chmod 644 /etc/mysql/mariadb.conf.d/sei.cnf 22 | RUN chmod +r /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 23 | RUN chmod +r /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 24 | RUN sed -i '1i use sei; \n' /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 25 | RUN sed -i '1i use sip; \n' /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 26 | 27 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 28 | RUN ["/usr/local/bin/docker-entrypoint.sh", "mysqld", "--datadir", "/initialized-db"] 29 | 30 | 31 | ############################## FIM DA INSTALAÇÃO ########################### 32 | FROM ${IMAGEM_BASE} 33 | COPY --from=builder /initialized-db /var/lib/mysql 34 | COPY --from=builder /etc/mysql/mariadb.conf.d/sei.cnf /etc/mysql/mariadb.conf.d/sei.cnf -------------------------------------------------------------------------------- /containers/databases/mariadb-sei40/assets/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Leberado acesso irrestrito à base para uso em desenvolvimento 4 | /usr/bin/mysqld_safe --bind-address=0.0.0.0 5 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei40/assets/my.cnf: -------------------------------------------------------------------------------- 1 | [mysqld] 2 | #sql-mode=STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 3 | 4 | character-set-server = latin1 5 | collation-server = latin1_swedish_ci 6 | connect_timeout = 28000 7 | net_read_timeout = 28000 8 | max_allowed_packet = 128M 9 | thread_stack = 192K 10 | thread_cache_size = 8 11 | innodb_buffer_pool_size = 128M 12 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei40/assets/pos-install.sql: -------------------------------------------------------------------------------- 1 | 2 | USE sei; 3 | 4 | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 5 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei40/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | CREATE DATABASE sei; 3 | 4 | USE sei; 5 | CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'; 6 | GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'; 7 | 8 | 9 | CREATE DATABASE sip; 10 | 11 | USE sip; 12 | CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'; 13 | GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'; 14 | 15 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei41/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Mariadb utilizado pelo SEI 3 | # construa antes a imagem base 4 | ################################################################################ 5 | 6 | ARG IMAGEM_BASE=processoeletronico/base-mariadb10.5:latest 7 | 8 | FROM ${IMAGEM_BASE} as builder 9 | 10 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 11 | 12 | ############################# INÍCIO DA INSTALAÇÃO ############################# 13 | ENV MYSQL_ROOT_PASSWORD=P@ssword 14 | 15 | COPY assets/my.cnf /etc/mysql/mariadb.conf.d/sei.cnf 16 | COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 17 | ADD ${GIT_DB_REF}/mysql/v4.1.0/sei_4_1_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei_4_1_0_BD_Ref_Exec.sql 18 | ADD ${GIT_DB_REF}/mysql/v4.1.0/sip_4_1_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip_4_1_0_BD_Ref_Exec.sql 19 | COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 20 | 21 | RUN chmod 644 /etc/mysql/mariadb.conf.d/sei.cnf 22 | RUN chmod +r /docker-entrypoint-initdb.d/2_sei_4_1_0_BD_Ref_Exec.sql 23 | RUN chmod +r /docker-entrypoint-initdb.d/3_sip_4_1_0_BD_Ref_Exec.sql 24 | RUN sed -i '1i use sei; \n' /docker-entrypoint-initdb.d/2_sei_4_1_0_BD_Ref_Exec.sql 25 | RUN sed -i '1i use sip; \n' /docker-entrypoint-initdb.d/3_sip_4_1_0_BD_Ref_Exec.sql 26 | 27 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 28 | RUN ["/usr/local/bin/docker-entrypoint.sh", "mysqld", "--datadir", "/initialized-db"] 29 | 30 | 31 | ############################## FIM DA INSTALAÇÃO ########################### 32 | FROM ${IMAGEM_BASE} 33 | COPY --from=builder /initialized-db /var/lib/mysql 34 | COPY --from=builder /etc/mysql/mariadb.conf.d/sei.cnf /etc/mysql/mariadb.conf.d/sei.cnf -------------------------------------------------------------------------------- /containers/databases/mariadb-sei41/assets/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Leberado acesso irrestrito à base para uso em desenvolvimento 4 | /usr/bin/mysqld_safe --bind-address=0.0.0.0 5 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei41/assets/my.cnf: -------------------------------------------------------------------------------- 1 | [mysqld] 2 | #sql-mode=STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 3 | 4 | character-set-server = latin1 5 | collation-server = latin1_swedish_ci 6 | connect_timeout = 28000 7 | net_read_timeout = 28000 8 | max_allowed_packet = 128M 9 | thread_stack = 192K 10 | thread_cache_size = 8 11 | innodb_buffer_pool_size = 128M 12 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei41/assets/pos-install.sql: -------------------------------------------------------------------------------- 1 | 2 | USE sei; 3 | 4 | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 5 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei41/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | CREATE DATABASE sei; 3 | 4 | USE sei; 5 | CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'; 6 | GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'; 7 | 8 | 9 | CREATE DATABASE sip; 10 | 11 | USE sip; 12 | CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'; 13 | GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'; 14 | 15 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei50/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Mariadb utilizado pelo SEI 3 | # construa antes a imagem base 4 | ################################################################################ 5 | 6 | ARG IMAGEM_BASE=processoeletronico/base-mariadb10.5:latest 7 | 8 | FROM ${IMAGEM_BASE} as builder 9 | 10 | #ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/feat/master 11 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 12 | 13 | ############################# INÍCIO DA INSTALAÇÃO ############################# 14 | ENV MYSQL_ROOT_PASSWORD=P@ssword 15 | 16 | COPY assets/my.cnf /etc/mysql/mariadb.conf.d/sei.cnf 17 | COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 18 | ADD ${GIT_DB_REF}/mysql/v5.0.0/sei_5_0_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei_5_0_0_BD_Ref_Exec.sql 19 | ADD ${GIT_DB_REF}/mysql/v5.0.0/sip_5_0_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip_5_0_0_BD_Ref_Exec.sql 20 | COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 21 | 22 | RUN chmod 644 /etc/mysql/mariadb.conf.d/sei.cnf 23 | RUN chmod +r /docker-entrypoint-initdb.d/2_sei_5_0_0_BD_Ref_Exec.sql 24 | RUN chmod +r /docker-entrypoint-initdb.d/3_sip_5_0_0_BD_Ref_Exec.sql 25 | RUN sed -i '1i use sei; \n' /docker-entrypoint-initdb.d/2_sei_5_0_0_BD_Ref_Exec.sql 26 | RUN sed -i '1i use sip; \n' /docker-entrypoint-initdb.d/3_sip_5_0_0_BD_Ref_Exec.sql 27 | 28 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 29 | RUN ["/usr/local/bin/docker-entrypoint.sh", "mysqld", "--datadir", "/initialized-db"] 30 | 31 | 32 | ############################## FIM DA INSTALAÇÃO ########################### 33 | FROM ${IMAGEM_BASE} 34 | COPY --from=builder /initialized-db /var/lib/mysql 35 | COPY --from=builder /etc/mysql/mariadb.conf.d/sei.cnf /etc/mysql/mariadb.conf.d/sei.cnf 36 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei50/assets/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Leberado acesso irrestrito à base para uso em desenvolvimento 4 | /usr/bin/mysqld_safe --bind-address=0.0.0.0 5 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei50/assets/my.cnf: -------------------------------------------------------------------------------- 1 | [mysqld] 2 | #sql-mode=STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 3 | 4 | character-set-server = latin1 5 | collation-server = latin1_swedish_ci 6 | connect_timeout = 28000 7 | net_read_timeout = 28000 8 | max_allowed_packet = 128M 9 | thread_stack = 192K 10 | thread_cache_size = 8 11 | innodb_buffer_pool_size = 128M 12 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei50/assets/pos-install.sql: -------------------------------------------------------------------------------- 1 | 2 | USE sei; 3 | 4 | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 5 | -------------------------------------------------------------------------------- /containers/databases/mariadb-sei50/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | CREATE DATABASE sei; 3 | 4 | USE sei; 5 | CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'; 6 | GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'; 7 | 8 | 9 | CREATE DATABASE sip; 10 | 11 | USE sip; 12 | CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'; 13 | GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'; 14 | 15 | -------------------------------------------------------------------------------- /containers/databases/mysql8-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Mysql Oficial - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM mysql:8.0.21 -------------------------------------------------------------------------------- /containers/databases/mysql8-sei41/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Mariadb utilizado pelo SEI 3 | # construa antes a imagem base 4 | ################################################################################ 5 | 6 | ARG IMAGEM_BASE=processoeletronico/base-mysql8:latest 7 | 8 | FROM ${IMAGEM_BASE} as builder 9 | 10 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 11 | 12 | ############################# INÍCIO DA INSTALAÇÃO ############################# 13 | ENV MYSQL_ROOT_PASSWORD=P@ssword 14 | 15 | COPY assets/my.cnf /etc/mysql/conf.d/sei.cnf 16 | COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 17 | ADD ${GIT_DB_REF}/mysql/v4.1.0/sei_4_1_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei_4_1_0_BD_Ref_Exec.sql 18 | ADD ${GIT_DB_REF}/mysql/v4.1.0/sip_4_1_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip_4_1_0_BD_Ref_Exec.sql 19 | COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 20 | 21 | RUN chmod 644 /etc/mysql/conf.d/sei.cnf 22 | RUN chmod +r /docker-entrypoint-initdb.d/2_sei_4_1_0_BD_Ref_Exec.sql 23 | RUN chmod +r /docker-entrypoint-initdb.d/3_sip_4_1_0_BD_Ref_Exec.sql 24 | RUN sed -i '1i use sei; \n' /docker-entrypoint-initdb.d/2_sei_4_1_0_BD_Ref_Exec.sql 25 | RUN sed -i '1i use sip; \n' /docker-entrypoint-initdb.d/3_sip_4_1_0_BD_Ref_Exec.sql 26 | 27 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 28 | RUN ["/usr/local/bin/docker-entrypoint.sh", "mysqld", "--datadir", "/initialized-db"] 29 | 30 | 31 | ############################## FIM DA INSTALAÇÃO ########################### 32 | FROM ${IMAGEM_BASE} 33 | COPY --from=builder /initialized-db /var/lib/mysql 34 | COPY --from=builder /etc/mysql/conf.d/sei.cnf /etc/mysql/conf.d/sei.cnf -------------------------------------------------------------------------------- /containers/databases/mysql8-sei41/assets/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Leberado acesso irrestrito à base para uso em desenvolvimento 4 | /usr/bin/mysqld_safe --bind-address=0.0.0.0 5 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei41/assets/my.cnf: -------------------------------------------------------------------------------- 1 | [mysqld] 2 | #sql-mode=STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 3 | 4 | character-set-server = latin1 5 | collation-server = latin1_swedish_ci 6 | connect_timeout = 28000 7 | net_read_timeout = 28000 8 | max_allowed_packet = 128M 9 | thread_stack = 192K 10 | thread_cache_size = 8 11 | innodb_buffer_pool_size = 128M 12 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei41/assets/pos-install.sql: -------------------------------------------------------------------------------- 1 | 2 | USE sei; 3 | 4 | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 5 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei41/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | CREATE DATABASE sei; 3 | 4 | USE sei; 5 | CREATE USER 'sei_user'@'%' IDENTIFIED WITH mysql_native_password BY 'sei_user'; 6 | GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'; 7 | 8 | 9 | CREATE DATABASE sip; 10 | 11 | USE sip; 12 | CREATE USER 'sip_user'@'%' IDENTIFIED WITH mysql_native_password BY 'sip_user'; 13 | GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'; 14 | 15 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei50/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Mariadb utilizado pelo SEI 3 | # construa antes a imagem base 4 | ################################################################################ 5 | 6 | ARG IMAGEM_BASE=processoeletronico/base-mysql8:latest 7 | 8 | FROM ${IMAGEM_BASE} as builder 9 | 10 | #ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/feat/master 11 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 12 | 13 | ############################# INÍCIO DA INSTALAÇÃO ############################# 14 | ENV MYSQL_ROOT_PASSWORD=P@ssword 15 | 16 | COPY assets/my.cnf /etc/mysql/conf.d/sei.cnf 17 | COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 18 | ADD ${GIT_DB_REF}/mysql/v5.0.0/sei_5_0_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei_5_0_0_BD_Ref_Exec.sql 19 | ADD ${GIT_DB_REF}/mysql/v5.0.0/sip_5_0_0_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip_5_0_0_BD_Ref_Exec.sql 20 | COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 21 | 22 | RUN chmod 644 /etc/mysql/conf.d/sei.cnf 23 | RUN chmod +r /docker-entrypoint-initdb.d/2_sei_5_0_0_BD_Ref_Exec.sql 24 | RUN chmod +r /docker-entrypoint-initdb.d/3_sip_5_0_0_BD_Ref_Exec.sql 25 | RUN sed -i '1i use sei; \n' /docker-entrypoint-initdb.d/2_sei_5_0_0_BD_Ref_Exec.sql 26 | RUN sed -i '1i use sip; \n' /docker-entrypoint-initdb.d/3_sip_5_0_0_BD_Ref_Exec.sql 27 | 28 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 29 | RUN ["/usr/local/bin/docker-entrypoint.sh", "mysqld", "--datadir", "/initialized-db"] 30 | 31 | 32 | ############################## FIM DA INSTALAÇÃO ########################### 33 | FROM ${IMAGEM_BASE} 34 | COPY --from=builder /initialized-db /var/lib/mysql 35 | COPY --from=builder /etc/mysql/conf.d/sei.cnf /etc/mysql/conf.d/sei.cnf 36 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei50/assets/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # Leberado acesso irrestrito à base para uso em desenvolvimento 4 | /usr/bin/mysqld_safe --bind-address=0.0.0.0 5 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei50/assets/my.cnf: -------------------------------------------------------------------------------- 1 | [mysqld] 2 | #sql-mode=STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,TRADITIONAL,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION 3 | 4 | character-set-server = latin1 5 | collation-server = latin1_swedish_ci 6 | connect_timeout = 28000 7 | net_read_timeout = 28000 8 | max_allowed_packet = 128M 9 | thread_stack = 192K 10 | thread_cache_size = 8 11 | innodb_buffer_pool_size = 128M 12 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei50/assets/pos-install.sql: -------------------------------------------------------------------------------- 1 | 2 | USE sei; 3 | 4 | GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; 5 | -------------------------------------------------------------------------------- /containers/databases/mysql8-sei50/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | CREATE DATABASE sei; 3 | 4 | USE sei; 5 | CREATE USER 'sei_user'@'%' IDENTIFIED BY 'sei_user'; 6 | GRANT ALL PRIVILEGES ON sei.* TO 'sei_user'@'%'; 7 | 8 | 9 | CREATE DATABASE sip; 10 | 11 | USE sip; 12 | CREATE USER 'sip_user'@'%' IDENTIFIED BY 'sip_user'; 13 | GRANT ALL PRIVILEGES ON sip.* TO 'sip_user'@'%'; 14 | 15 | -------------------------------------------------------------------------------- /containers/databases/oracle-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Oracle Imagem Alternativa - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM oracleinanutshell/oracle-xe-11g -------------------------------------------------------------------------------- /containers/databases/oracle-sei40/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Oracle utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # construa antes a imagem base 6 | ################################################################################ 7 | 8 | ARG IMAGEM_BASE=processoeletronico/base-oracle11g:latest 9 | 10 | FROM ${IMAGEM_BASE} 11 | 12 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 13 | 14 | ENV TERM xterm \ 15 | ORACLE_ALLOW_REMOTE=true \ 16 | NLS_LANG=PORTUGUESE_BRAZIL.WE8MSWIN1252 17 | 18 | ADD ${GIT_DB_REF}/oracle/v4.0.0/sei_4_0_0_BD_Ref_Exec.dmp \ 19 | ${GIT_DB_REF}/oracle/v4.0.0/sip_4_0_0_BD_Ref_Exec.dmp \ 20 | assets/pre-install.sql \ 21 | assets/sei-config.sql \ 22 | assets/sip-config.sql \ 23 | assets/install.sh \ 24 | /tmp/ 25 | 26 | RUN bash /tmp/install.sh 27 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei40/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | 4 | # Variáveis de ambiente 5 | export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe 6 | export PATH=$ORACLE_HOME/bin:$PATH 7 | export ORACLE_SID=XE 8 | export NLS_LANG=PORTUGUESE_BRAZIL.WE8MSWIN1252 9 | 10 | #mv /tmp/sei_4_0_0_BD_Ref_Exec.dmp /tmp/sei_4_0_0_BD_Ref_Exec.dmp 11 | #mv /tmp/sip_4_0_0_BD_Ref_Exec.dmp /tmp/sip_4_0_0_BD_Ref_Exec.dmp 12 | 13 | # Inicialização do servidor 14 | /usr/sbin/startup.sh 15 | 16 | # Configuração do character set e outros parâmetros iniciais 17 | sqlplus sys/oracle as sysdba @"/tmp/pre-install.sql" 18 | 19 | # Restauração das bases de dados do SEI e SIP 20 | imp sei/sei_user file=/tmp/sei_4_0_0_BD_Ref_Exec.dmp full=y 21 | imp sip/sip_user file=/tmp/sip_4_0_0_BD_Ref_Exec.dmp full=y 22 | 23 | # Configuração das bases de dados do sistema 24 | sqlplus sei/sei_user @"/tmp/sei-config.sql" 25 | sqlplus sip/sip_user @"/tmp/sip-config.sql" 26 | 27 | # Remover arquivos temporários 28 | rm -rf /tmp/* 29 | 30 | exit 0 31 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei40/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | SHUTDOWN; 2 | STARTUP MOUNT; 3 | ALTER SYSTEM ENABLE RESTRICTED SESSION; 4 | ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; 5 | ALTER DATABASE OPEN; 6 | ALTER DATABASE CHARACTER SET INTERNAL_USE WE8MSWIN1252; 7 | ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE AL16UTF16; 8 | SHUTDOWN IMMEDIATE; 9 | STARTUP; 10 | 11 | CREATE TABLESPACE SEI DATAFILE '/u01/app/oracle/oradata/XE/sei.dbf' SIZE 50M AUTOEXTEND ON; 12 | CREATE TABLESPACE SIP DATAFILE '/u01/app/oracle/oradata/XE/sip.dbf' SIZE 50M AUTOEXTEND ON; 13 | 14 | ALTER USER SYSTEM IDENTIFIED BY P@ssword; 15 | ALTER USER SYS IDENTIFIED BY P@ssword; 16 | 17 | ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION NULL; 18 | ALTER PROFILE DEFAULT limit PASSWORD_REUSE_TIME unlimited; 19 | ALTER PROFILE DEFAULT limit PASSWORD_LIFE_TIME unlimited; 20 | 21 | CREATE USER sei IDENTIFIED BY sei_user; 22 | CREATE USER sip IDENTIFIED BY sip_user; 23 | 24 | GRANT ALL PRIVILEGES TO sei; 25 | GRANT ALL PRIVILEGES TO sip; 26 | 27 | EXIT; 28 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei40/assets/sei-config.sql: -------------------------------------------------------------------------------- 1 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 2 | delete from auditoria_protocolo; 3 | 4 | EXIT; 5 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei40/assets/sip-config.sql: -------------------------------------------------------------------------------- 1 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 2 | update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP'; 3 | update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 4 | update orgao set sin_autenticar='N' where id_orgao=0; 5 | 6 | EXIT; 7 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei41/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Oracle utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # construa antes a imagem base 6 | ################################################################################ 7 | 8 | ARG IMAGEM_BASE=processoeletronico/base-oracle11g:latest 9 | 10 | FROM ${IMAGEM_BASE} 11 | 12 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 13 | 14 | ENV TERM xterm \ 15 | ORACLE_ALLOW_REMOTE=true \ 16 | NLS_LANG=PORTUGUESE_BRAZIL.WE8MSWIN1252 17 | 18 | ADD ${GIT_DB_REF}/oracle/v4.1.0/sei_4_1_0_BD_Ref_Exec.dmp \ 19 | ${GIT_DB_REF}/oracle/v4.1.0/sip_4_1_0_BD_Ref_Exec.dmp \ 20 | assets/pre-install.sql \ 21 | assets/sei-config.sql \ 22 | assets/sip-config.sql \ 23 | assets/install.sh \ 24 | /tmp/ 25 | 26 | RUN bash /tmp/install.sh 27 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei41/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | 4 | # Variáveis de ambiente 5 | export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe 6 | export PATH=$ORACLE_HOME/bin:$PATH 7 | export ORACLE_SID=XE 8 | export NLS_LANG=PORTUGUESE_BRAZIL.WE8MSWIN1252 9 | 10 | #mv /tmp/sei_4_0_0_BD_Ref_Exec.dmp /tmp/sei_4_0_0_BD_Ref_Exec.dmp 11 | #mv /tmp/sip_4_0_0_BD_Ref_Exec.dmp /tmp/sip_4_0_0_BD_Ref_Exec.dmp 12 | 13 | # Inicialização do servidor 14 | /usr/sbin/startup.sh 15 | 16 | # Configuração do character set e outros parâmetros iniciais 17 | sqlplus sys/oracle as sysdba @"/tmp/pre-install.sql" 18 | 19 | # Restauração das bases de dados do SEI e SIP 20 | imp sei/sei_user file=/tmp/sei_4_1_0_BD_Ref_Exec.dmp full=y 21 | imp sip/sip_user file=/tmp/sip_4_1_0_BD_Ref_Exec.dmp full=y 22 | 23 | # Configuração das bases de dados do sistema 24 | sqlplus sei/sei_user @"/tmp/sei-config.sql" 25 | sqlplus sip/sip_user @"/tmp/sip-config.sql" 26 | 27 | # Remover arquivos temporários 28 | rm -rf /tmp/* 29 | 30 | exit 0 31 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei41/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | SHUTDOWN; 2 | STARTUP MOUNT; 3 | ALTER SYSTEM ENABLE RESTRICTED SESSION; 4 | ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; 5 | ALTER DATABASE OPEN; 6 | ALTER DATABASE CHARACTER SET INTERNAL_USE WE8MSWIN1252; 7 | ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE AL16UTF16; 8 | SHUTDOWN IMMEDIATE; 9 | STARTUP; 10 | 11 | CREATE TABLESPACE SEI DATAFILE '/u01/app/oracle/oradata/XE/sei.dbf' SIZE 50M AUTOEXTEND ON; 12 | CREATE TABLESPACE SIP DATAFILE '/u01/app/oracle/oradata/XE/sip.dbf' SIZE 50M AUTOEXTEND ON; 13 | 14 | ALTER USER SYSTEM IDENTIFIED BY P@ssword; 15 | ALTER USER SYS IDENTIFIED BY P@ssword; 16 | 17 | ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION NULL; 18 | ALTER PROFILE DEFAULT limit PASSWORD_REUSE_TIME unlimited; 19 | ALTER PROFILE DEFAULT limit PASSWORD_LIFE_TIME unlimited; 20 | 21 | CREATE USER sei IDENTIFIED BY sei_user; 22 | CREATE USER sip IDENTIFIED BY sip_user; 23 | 24 | GRANT ALL PRIVILEGES TO sei; 25 | GRANT ALL PRIVILEGES TO sip; 26 | 27 | EXIT; 28 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei41/assets/sei-config.sql: -------------------------------------------------------------------------------- 1 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 2 | delete from auditoria_protocolo; 3 | 4 | EXIT; 5 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei41/assets/sip-config.sql: -------------------------------------------------------------------------------- 1 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 2 | update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP'; 3 | update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 4 | update orgao set sin_autenticar='N' where id_orgao=0; 5 | 6 | EXIT; 7 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei50/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Oracle utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # construa antes a imagem base 6 | ################################################################################ 7 | 8 | ARG IMAGEM_BASE=processoeletronico/base-oracle11g:latest 9 | 10 | FROM ${IMAGEM_BASE} 11 | 12 | #ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/feat/master 13 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 14 | 15 | ENV TERM xterm \ 16 | ORACLE_ALLOW_REMOTE=true \ 17 | NLS_LANG=PORTUGUESE_BRAZIL.WE8MSWIN1252 18 | 19 | ADD ${GIT_DB_REF}/oracle/v5.0.0/sei_5_0_0_BD_Ref_Exec.dmp \ 20 | ${GIT_DB_REF}/oracle/v5.0.0/sip_5_0_0_BD_Ref_Exec.dmp \ 21 | /tmp/ 22 | 23 | COPY assets/pre-install.sql /tmp/pre-install.sql 24 | COPY assets/sei-config.sql /tmp/sei-config.sql 25 | COPY assets/sip-config.sql /tmp/sip-config.sql 26 | COPY assets/install.sh /install.sh 27 | 28 | RUN bash /install.sh 29 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei50/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | 4 | # Variáveis de ambiente 5 | export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe 6 | export PATH=$ORACLE_HOME/bin:$PATH 7 | export ORACLE_SID=XE 8 | export NLS_LANG=PORTUGUESE_BRAZIL.WE8MSWIN1252 9 | 10 | #mv /tmp/sei_4_0_0_BD_Ref_Exec.dmp /tmp/sei_4_0_0_BD_Ref_Exec.dmp 11 | #mv /tmp/sip_4_0_0_BD_Ref_Exec.dmp /tmp/sip_4_0_0_BD_Ref_Exec.dmp 12 | 13 | # Inicialização do servidor 14 | /usr/sbin/startup.sh 15 | 16 | # Configuração do character set e outros parâmetros iniciais 17 | sqlplus sys/oracle as sysdba @"/tmp/pre-install.sql" 18 | 19 | # Restauração das bases de dados do SEI e SIP 20 | imp sei/sei_user file=/tmp/sei_5_0_0_BD_Ref_Exec.dmp full=y 21 | imp sip/sip_user file=/tmp/sip_5_0_0_BD_Ref_Exec.dmp full=y 22 | 23 | # Configuração das bases de dados do sistema 24 | sqlplus sei/sei_user @"/tmp/sei-config.sql" 25 | sqlplus sip/sip_user @"/tmp/sip-config.sql" 26 | 27 | # Remover arquivos temporários 28 | rm -rf /tmp/* 29 | 30 | exit 0 31 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei50/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | SHUTDOWN; 2 | STARTUP MOUNT; 3 | ALTER SYSTEM ENABLE RESTRICTED SESSION; 4 | ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0; 5 | ALTER DATABASE OPEN; 6 | ALTER DATABASE CHARACTER SET INTERNAL_USE WE8MSWIN1252; 7 | ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE AL16UTF16; 8 | SHUTDOWN IMMEDIATE; 9 | STARTUP; 10 | 11 | CREATE TABLESPACE SEI DATAFILE '/u01/app/oracle/oradata/XE/sei.dbf' SIZE 50M AUTOEXTEND ON; 12 | CREATE TABLESPACE SIP DATAFILE '/u01/app/oracle/oradata/XE/sip.dbf' SIZE 50M AUTOEXTEND ON; 13 | 14 | ALTER USER SYSTEM IDENTIFIED BY P@ssword; 15 | ALTER USER SYS IDENTIFIED BY P@ssword; 16 | 17 | ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION NULL; 18 | ALTER PROFILE DEFAULT limit PASSWORD_REUSE_TIME unlimited; 19 | ALTER PROFILE DEFAULT limit PASSWORD_LIFE_TIME unlimited; 20 | 21 | CREATE USER sei IDENTIFIED BY sei_user; 22 | CREATE USER sip IDENTIFIED BY sip_user; 23 | 24 | GRANT ALL PRIVILEGES TO sei; 25 | GRANT ALL PRIVILEGES TO sip; 26 | 27 | EXIT; 28 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei50/assets/sei-config.sql: -------------------------------------------------------------------------------- 1 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 2 | delete from auditoria_protocolo; 3 | 4 | EXIT; 5 | -------------------------------------------------------------------------------- /containers/databases/oracle-sei50/assets/sip-config.sql: -------------------------------------------------------------------------------- 1 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 2 | update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP'; 3 | update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 4 | update orgao set sin_autenticar='N' where id_orgao=0; 5 | 6 | EXIT; 7 | -------------------------------------------------------------------------------- /containers/databases/postgres-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Postgres Imagem Alternativa - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM postgres:15 -------------------------------------------------------------------------------- /containers/databases/postgres-sei40/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Postgres utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # construa antes a imagem base 6 | ################################################################################ 7 | 8 | ARG IMAGEM_BASE=processoeletronico/base-postgres15:latest 9 | 10 | FROM ${IMAGEM_BASE} as builder 11 | 12 | ARG VERSAO_BASE=4.0.0 13 | ARG NOME_FILE=4_0_0 14 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 15 | 16 | 17 | ############################# INÍCIO DA INSTALACAO ############################# 18 | ENV POSTGRES_PASSWORD=P@ssword \ 19 | POSTGRES_HOST_AUTH_METHOD=scram-sha-256 \ 20 | POSTGRES_INITDB_ARGS=--auth-host=scram-sha-256 \ 21 | PGDATA=/initialized-db 22 | 23 | ADD ${GIT_DB_REF}/postgresql/v${VERSAO_BASE}/sei_${NOME_FILE}_BD_Ref_Exec.sql \ 24 | ${GIT_DB_REF}/postgresql/v${VERSAO_BASE}/sip_${NOME_FILE}_BD_Ref_Exec.sql \ 25 | assets/* \ 26 | /tmp/ 27 | 28 | RUN mv /tmp/postgres.conf /etc/postgresql/postgresql.conf && \ 29 | mv /tmp/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql && \ 30 | mv /tmp/sei_${NOME_FILE}_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei.sql && \ 31 | mv /tmp/sip_${NOME_FILE}_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip.sql && \ 32 | mv /tmp/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql && \ 33 | mkdir /initialized-db && chown -R postgres /initialized-db && \ 34 | chmod -R 777 /docker-entrypoint-initdb.d/ && \ 35 | chmod 644 /etc/postgresql/postgresql.conf && \ 36 | sed -i '1i \\\c sei; \n' /docker-entrypoint-initdb.d/2_sei.sql && \ 37 | sed -i '1i \\\c sip; \n' /docker-entrypoint-initdb.d/3_sip.sql 38 | 39 | 40 | 41 | 42 | #COPY assets/postgres.conf /etc/postgresql/postgresql.conf 43 | #COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 44 | #ADD $REPOSITORIO_BASE/sei_super_4.0.x.1_BD_Ref_Exec.sql?raw=true /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 45 | #ADD $REPOSITORIO_BASE/sip_super_4.0.x.1_BD_Ref_Exec.sql?raw=true /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 46 | #COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 47 | 48 | #RUN mkdir /initialized-db && chown -R postgres /initialized-db 49 | #RUN chmod -R 777 /docker-entrypoint-initdb.d/ 50 | #RUN chmod 644 /etc/postgresql/postgresql.conf 51 | #RUN sed -i '1i \\\c sei; \n' /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 52 | #RUN sed -i '1i \\\c sip; \n' /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 53 | 54 | # RUN su postgres -c "initdb -D /initialized-db" 55 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 56 | RUN ["/usr/local/bin/docker-entrypoint.sh", "postgres"] 57 | 58 | # ############################## FIM DA INSTALAÇÃO ########################### 59 | FROM ${IMAGEM_BASE} 60 | 61 | COPY --from=builder /initialized-db /var/lib/postgresql/data 62 | COPY --from=builder /etc/postgresql/postgresql.conf /var/lib/postgresql/data/postgresql.conf -------------------------------------------------------------------------------- /containers/databases/postgres-sei40/assets/pos-install.sql: -------------------------------------------------------------------------------- 1 | \c sei; 2 | ALTER DATABASE sei OWNER TO sei_user; 3 | GRANT ALL PRIVILEGES ON DATABASE sei TO sei_user; 4 | GRANT ALL PRIVILEGES ON SCHEMA public TO sei_user; 5 | GRANT ALL ON ALL TABLES IN SCHEMA public TO sei_user; 6 | GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO sei_user; 7 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 8 | delete from auditoria_protocolo; 9 | 10 | \c sip; 11 | ALTER DATABASE sip OWNER TO sip_user; 12 | GRANT ALL PRIVILEGES ON DATABASE sip TO sip_user; 13 | GRANT ALL PRIVILEGES ON SCHEMA public TO sip_user; 14 | GRANT ALL ON ALL TABLES IN SCHEMA public TO sip_user; 15 | GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA public TO sip_user; 16 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 17 | update sistema set pagina_inicial='http://localhost:8000/sip' where sigla='SIP'; 18 | update sistema set pagina_inicial='http://localhost:8000/sei/inicializar.php', web_service='http://localhost:8000/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 19 | update orgao set sin_autenticar='N' where id_orgao=0; -------------------------------------------------------------------------------- /containers/databases/postgres-sei40/assets/postgres.conf: -------------------------------------------------------------------------------- 1 | listen_addresses = '*' 2 | datestyle = 'iso, dmy' 3 | client_encoding = Latin1 -------------------------------------------------------------------------------- /containers/databases/postgres-sei40/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | create user sei_user with password 'sei_user'; 3 | CREATE DATABASE sei OWNER sei_user; 4 | 5 | create user sip_user with password 'sip_user'; 6 | CREATE DATABASE sip OWNER sip_user; -------------------------------------------------------------------------------- /containers/databases/postgres-sei41/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Postgres utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # construa antes a imagem base 6 | ################################################################################ 7 | 8 | ARG IMAGEM_BASE=processoeletronico/base-postgres15:latest 9 | 10 | FROM ${IMAGEM_BASE} as builder 11 | 12 | ARG VERSAO_BASE=4.1.0 13 | ARG NOME_FILE=4_1_0 14 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 15 | 16 | 17 | ############################# INÍCIO DA INSTALACAO ############################# 18 | ENV POSTGRES_PASSWORD=P@ssword \ 19 | POSTGRES_HOST_AUTH_METHOD=scram-sha-256 \ 20 | POSTGRES_INITDB_ARGS=--auth-host=scram-sha-256 \ 21 | PGDATA=/initialized-db 22 | 23 | ADD ${GIT_DB_REF}/postgresql/v${VERSAO_BASE}/sei_${NOME_FILE}_BD_Ref_Exec.sql \ 24 | ${GIT_DB_REF}/postgresql/v${VERSAO_BASE}/sip_${NOME_FILE}_BD_Ref_Exec.sql \ 25 | assets/* \ 26 | /tmp/ 27 | 28 | RUN mv /tmp/postgres.conf /etc/postgresql/postgresql.conf && \ 29 | mv /tmp/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql && \ 30 | mv /tmp/sei_${NOME_FILE}_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei.sql && \ 31 | mv /tmp/sip_${NOME_FILE}_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip.sql && \ 32 | mv /tmp/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql && \ 33 | mkdir /initialized-db && chown -R postgres /initialized-db && \ 34 | chmod -R 777 /docker-entrypoint-initdb.d/ && \ 35 | chmod 644 /etc/postgresql/postgresql.conf && \ 36 | sed -i '1i \\\c sei; \n' /docker-entrypoint-initdb.d/2_sei.sql && \ 37 | sed -i '1i \\\c sip; \n' /docker-entrypoint-initdb.d/3_sip.sql 38 | 39 | 40 | 41 | 42 | #COPY assets/postgres.conf /etc/postgresql/postgresql.conf 43 | #COPY assets/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql 44 | #ADD $REPOSITORIO_BASE/sei_super_4.0.x.1_BD_Ref_Exec.sql?raw=true /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 45 | #ADD $REPOSITORIO_BASE/sip_super_4.0.x.1_BD_Ref_Exec.sql?raw=true /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 46 | #COPY assets/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql 47 | 48 | #RUN mkdir /initialized-db && chown -R postgres /initialized-db 49 | #RUN chmod -R 777 /docker-entrypoint-initdb.d/ 50 | #RUN chmod 644 /etc/postgresql/postgresql.conf 51 | #RUN sed -i '1i \\\c sei; \n' /docker-entrypoint-initdb.d/2_sei_4_0_0_BD_Ref_Exec.sql 52 | #RUN sed -i '1i \\\c sip; \n' /docker-entrypoint-initdb.d/3_sip_4_0_0_BD_Ref_Exec.sql 53 | 54 | # RUN su postgres -c "initdb -D /initialized-db" 55 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 56 | RUN ["/usr/local/bin/docker-entrypoint.sh", "postgres"] 57 | 58 | # ############################## FIM DA INSTALAÇÃO ########################### 59 | FROM ${IMAGEM_BASE} 60 | 61 | COPY --from=builder /initialized-db /var/lib/postgresql/data 62 | COPY --from=builder /etc/postgresql/postgresql.conf /var/lib/postgresql/data/postgresql.conf -------------------------------------------------------------------------------- /containers/databases/postgres-sei41/assets/postgres.conf: -------------------------------------------------------------------------------- 1 | listen_addresses = '*' 2 | datestyle = 'iso, dmy' 3 | client_encoding = Latin1 -------------------------------------------------------------------------------- /containers/databases/postgres-sei41/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | create user sei_user with password 'sei_user'; 3 | CREATE DATABASE sei OWNER sei_user; 4 | 5 | create user sip_user with password 'sip_user'; 6 | CREATE DATABASE sip OWNER sip_user; -------------------------------------------------------------------------------- /containers/databases/postgres-sei50/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container Postgres utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # construa antes a imagem base 6 | ################################################################################ 7 | 8 | ARG IMAGEM_BASE=processoeletronico/base-postgres15:latest 9 | 10 | FROM ${IMAGEM_BASE} as builder 11 | 12 | ARG VERSAO_BASE=5.0.0 13 | ARG NOME_FILE=5_0_0 14 | #ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/feat/master 15 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 16 | 17 | 18 | ############################# INÍCIO DA INSTALACAO ############################# 19 | ENV POSTGRES_PASSWORD=P@ssword \ 20 | POSTGRES_HOST_AUTH_METHOD=scram-sha-256 \ 21 | POSTGRES_INITDB_ARGS=--auth-host=scram-sha-256 \ 22 | PGDATA=/initialized-db 23 | 24 | ADD ${GIT_DB_REF}/postgresql/v${VERSAO_BASE}/sei_${NOME_FILE}_BD_Ref_Exec.sql \ 25 | ${GIT_DB_REF}/postgresql/v${VERSAO_BASE}/sip_${NOME_FILE}_BD_Ref_Exec.sql \ 26 | assets/* \ 27 | /tmp/ 28 | 29 | RUN mv /tmp/postgres.conf /etc/postgresql/postgresql.conf && \ 30 | mv /tmp/pre-install.sql /docker-entrypoint-initdb.d/1_pre-install.sql && \ 31 | mv /tmp/sei_${NOME_FILE}_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/2_sei.sql && \ 32 | mv /tmp/sip_${NOME_FILE}_BD_Ref_Exec.sql /docker-entrypoint-initdb.d/3_sip.sql && \ 33 | mv /tmp/pos-install.sql /docker-entrypoint-initdb.d/9_pos-install.sql && \ 34 | mkdir /initialized-db && chown -R postgres /initialized-db && \ 35 | chmod -R 777 /docker-entrypoint-initdb.d/ && \ 36 | chmod 644 /etc/postgresql/postgresql.conf && \ 37 | sed -i '1i \\\c sei; \n' /docker-entrypoint-initdb.d/2_sei.sql && \ 38 | sed -i '1i \\\c sip; \n' /docker-entrypoint-initdb.d/3_sip.sql 39 | 40 | # RUN su postgres -c "initdb -D /initialized-db" 41 | RUN ["sed", "-i", "s/exec \"$@\"/echo \"not running $@\"/", "/usr/local/bin/docker-entrypoint.sh"] 42 | RUN ["/usr/local/bin/docker-entrypoint.sh", "postgres"] 43 | 44 | # ############################## FIM DA INSTALAÇÃO ########################### 45 | FROM ${IMAGEM_BASE} 46 | 47 | COPY --from=builder /initialized-db /var/lib/postgresql/data 48 | COPY --from=builder /etc/postgresql/postgresql.conf /var/lib/postgresql/data/postgresql.conf 49 | -------------------------------------------------------------------------------- /containers/databases/postgres-sei50/assets/postgres.conf: -------------------------------------------------------------------------------- 1 | listen_addresses = '*' 2 | datestyle = 'iso, dmy' 3 | client_encoding = Latin1 -------------------------------------------------------------------------------- /containers/databases/postgres-sei50/assets/pre-install.sql: -------------------------------------------------------------------------------- 1 | 2 | create user sei_user with password 'sei_user'; 3 | CREATE DATABASE sei OWNER sei_user; 4 | 5 | create user sip_user with password 'sip_user'; 6 | CREATE DATABASE sip OWNER sip_user; -------------------------------------------------------------------------------- /containers/databases/sqlserver-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # SqlServer Imagem Alternativa - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM liaisonintl/mssql-server-linux:v2019 6 | #liaisonintl/mssql-server-linux -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei40/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container SqlServer utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # SQL Server para Linux é uma versão experimental e não deve ser utilizada em 6 | # ambiente de produção 7 | # construa antes a imagem base 8 | ################################################################################ 9 | 10 | ARG IMAGEM_BASE=processoeletronico/base-sqlserver2019:latest 11 | 12 | FROM ${IMAGEM_BASE} 13 | 14 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 15 | 16 | ENV TERM=xterm \ 17 | ACCEPT_EULA=Y \ 18 | SA_PASSWORD='yourStrong(!)Password' 19 | 20 | ADD assets/install.sh \ 21 | assets/restore.sql \ 22 | ${GIT_DB_REF}/sqlserver/v4.0.0/sei_4_0_0_BD_Ref_Exec.bak \ 23 | ${GIT_DB_REF}/sqlserver/v4.0.0/sip_4_0_0_BD_Ref_Exec.bak \ 24 | /tmp/ 25 | 26 | RUN bash /tmp/install.sh 27 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei40/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | 4 | # Variáveis de ambiente 5 | export ACCEPT_EULA=Y 6 | export SA_PASSWORD='yourStrong(!)Password' 7 | 8 | # Instalação do FreeTDS para acesso ao SQL Server 9 | #apt-get -y --allow-unauthenticated update 10 | #apt-get -y --allow-unauthenticated install libodbc1 freetds-dev freetds-bin 11 | 12 | /opt/mssql/bin/sqlservr & 13 | sleep 30 14 | 15 | mv /tmp/sip_4_0_0_BD_Ref_Exec.bak /tmp/sip_sqlserver.bak 16 | mv /tmp/sei_4_0_0_BD_Ref_Exec.bak /tmp/sei_sqlserver.bak 17 | 18 | /opt/mssql-tools18//bin/sqlcmd -S localhost -U sa -C -P $SA_PASSWORD < /tmp/restore.sql 19 | 20 | # Remover arquivos temporários 21 | rm -rf /tmp/* 22 | 23 | exit 0 24 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei40/assets/restore.sql: -------------------------------------------------------------------------------- 1 | 2 | -- TODO: Padronizar datafiles da base de dados em SQL Server 3 | RESTORE DATABASE [sei] FROM DISK = N'/tmp/sei_sqlserver.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5, 4 | MOVE 'gedoc' TO '/var/opt/mssql/data/sei_data.mdf', 5 | MOVE 'SEI_data3' TO '/var/opt/mssql/data/sei_data1.ndf', 6 | MOVE 'SEI_data4' TO '/var/opt/mssql/data/sei_data2.ndf', 7 | MOVE 'SEI_log2' TO '/var/opt/mssql/data/sei_data3.ndf', 8 | MOVE 'Sei_Log3' TO '/var/opt/mssql/data/sei_data4.ndf', 9 | MOVE 'gedoc_log' TO '/var/opt/mssql/data/sei_1og.ldf' 10 | GO 11 | 12 | -- TODO: Padronizar datafiles da base de dados em SQL Server 13 | RESTORE DATABASE [sip] FROM DISK = N'/tmp/sip_sqlserver.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5, 14 | MOVE 'sip_Data' TO '/var/opt/mssql/data/sip_data.mdf', 15 | MOVE 'sip_Log' TO '/var/opt/mssql/data/sip_log.ldf' 16 | GO 17 | 18 | USE sei; 19 | GO 20 | 21 | DROP USER IF EXISTS [sei_user] 22 | GO 23 | 24 | CREATE LOGIN sei_user 25 | WITH PASSWORD = 'sei_user', CHECK_POLICY=OFF; 26 | GO 27 | 28 | CREATE USER sei_user FOR LOGIN sei_user; 29 | GO 30 | 31 | EXEC sp_addrolemember 'db_owner', 'sei_user' 32 | GO 33 | 34 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 35 | GO 36 | 37 | delete from auditoria_protocolo; 38 | GO 39 | 40 | USE sip; 41 | GO 42 | 43 | DROP USER IF EXISTS [sip_user] 44 | GO 45 | 46 | CREATE LOGIN sip_user 47 | WITH PASSWORD = 'sip_user', CHECK_POLICY=OFF; 48 | GO 49 | 50 | CREATE USER sip_user FOR LOGIN sip_user; 51 | GO 52 | 53 | EXEC sp_addrolemember 'db_owner', 'sip_user' 54 | GO 55 | 56 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 57 | GO 58 | 59 | update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP'; 60 | GO 61 | 62 | update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 63 | GO 64 | 65 | update orgao set sin_autenticar='N' where id_orgao=0; 66 | GO 67 | 68 | delete from seq_infra_auditoria 69 | GO 70 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei41/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container SqlServer utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # SQL Server para Linux é uma versão experimental e não deve ser utilizada em 6 | # ambiente de produção 7 | # construa antes a imagem base 8 | ################################################################################ 9 | 10 | ARG IMAGEM_BASE=processoeletronico/base-sqlserver2019:latest 11 | 12 | FROM ${IMAGEM_BASE} 13 | 14 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 15 | 16 | ENV TERM=xterm \ 17 | ACCEPT_EULA=Y \ 18 | SA_PASSWORD='yourStrong(!)Password' 19 | 20 | ADD assets/install.sh \ 21 | assets/restore.sql \ 22 | ${GIT_DB_REF}/sqlserver/v4.1.0/sei_4_1_0_BD_Ref_Exec.bak \ 23 | ${GIT_DB_REF}/sqlserver/v4.1.0/sip_4_1_0_BD_Ref_Exec.bak \ 24 | /tmp/ 25 | 26 | RUN bash /tmp/install.sh 27 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei41/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | 4 | # Variáveis de ambiente 5 | export ACCEPT_EULA=Y 6 | export SA_PASSWORD='yourStrong(!)Password' 7 | 8 | # Instalação do FreeTDS para acesso ao SQL Server 9 | #apt-get -y --allow-unauthenticated update 10 | #apt-get -y --allow-unauthenticated install libodbc1 freetds-dev freetds-bin 11 | 12 | /opt/mssql/bin/sqlservr & 13 | sleep 30 14 | 15 | mv /tmp/sip_4_1_0_BD_Ref_Exec.bak /tmp/sip_sqlserver.bak 16 | mv /tmp/sei_4_1_0_BD_Ref_Exec.bak /tmp/sei_sqlserver.bak 17 | 18 | /opt/mssql-tools18//bin/sqlcmd -S localhost -U sa -C -P $SA_PASSWORD < /tmp/restore.sql 19 | 20 | # Remover arquivos temporários 21 | rm -rf /tmp/* 22 | 23 | exit 0 24 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei41/assets/restore.sql: -------------------------------------------------------------------------------- 1 | 2 | -- TODO: Padronizar datafiles da base de dados em SQL Server 3 | RESTORE DATABASE [sei] FROM DISK = N'/tmp/sei_sqlserver.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5, 4 | MOVE 'gedoc' TO '/var/opt/mssql/data/sei_data.mdf', 5 | MOVE 'SEI_data3' TO '/var/opt/mssql/data/sei_data1.ndf', 6 | MOVE 'SEI_data4' TO '/var/opt/mssql/data/sei_data2.ndf', 7 | MOVE 'SEI_log2' TO '/var/opt/mssql/data/sei_data3.ndf', 8 | MOVE 'Sei_Log3' TO '/var/opt/mssql/data/sei_data4.ndf', 9 | MOVE 'gedoc_log' TO '/var/opt/mssql/data/sei_1og.ldf' 10 | GO 11 | 12 | -- TODO: Padronizar datafiles da base de dados em SQL Server 13 | RESTORE DATABASE [sip] FROM DISK = N'/tmp/sip_sqlserver.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5, 14 | MOVE 'sip_Data' TO '/var/opt/mssql/data/sip_data.mdf', 15 | MOVE 'sip_Log' TO '/var/opt/mssql/data/sip_log.ldf' 16 | GO 17 | 18 | USE sei; 19 | GO 20 | 21 | DROP USER IF EXISTS [sei_user] 22 | GO 23 | 24 | CREATE LOGIN sei_user 25 | WITH PASSWORD = 'sei_user', CHECK_POLICY=OFF; 26 | GO 27 | 28 | CREATE USER sei_user FOR LOGIN sei_user; 29 | GO 30 | 31 | EXEC sp_addrolemember 'db_owner', 'sei_user' 32 | GO 33 | 34 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 35 | GO 36 | 37 | delete from auditoria_protocolo; 38 | GO 39 | 40 | USE sip; 41 | GO 42 | 43 | DROP USER IF EXISTS [sip_user] 44 | GO 45 | 46 | CREATE LOGIN sip_user 47 | WITH PASSWORD = 'sip_user', CHECK_POLICY=OFF; 48 | GO 49 | 50 | CREATE USER sip_user FOR LOGIN sip_user; 51 | GO 52 | 53 | EXEC sp_addrolemember 'db_owner', 'sip_user' 54 | GO 55 | 56 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 57 | GO 58 | 59 | update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP'; 60 | GO 61 | 62 | update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 63 | GO 64 | 65 | update orgao set sin_autenticar='N' where id_orgao=0; 66 | GO 67 | 68 | delete from seq_infra_auditoria 69 | GO 70 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei50/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container SqlServer utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | # SQL Server para Linux é uma versão experimental e não deve ser utilizada em 6 | # ambiente de produção 7 | # construa antes a imagem base 8 | ################################################################################ 9 | 10 | ARG IMAGEM_BASE=processoeletronico/base-sqlserver2019:latest 11 | 12 | FROM ${IMAGEM_BASE} 13 | USER root 14 | #ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/feat/master 15 | ARG GIT_DB_REF=https://github.com/spbgovbr/sei-db-ref-executivo/raw/master 16 | 17 | ENV TERM xterm \ 18 | ACCEPT_EULA=Y \ 19 | SA_PASSWORD='yourStrong(!)Password' 20 | 21 | ADD assets/install.sh \ 22 | assets/restore.sql \ 23 | ${GIT_DB_REF}/sqlserver/v5.0.0/sei_5_0_0_BD_Ref_Exec.bak \ 24 | ${GIT_DB_REF}/sqlserver/v5.0.0/sip_5_0_0_BD_Ref_Exec.bak \ 25 | /tmp/ 26 | 27 | RUN bash /tmp/install.sh 28 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei50/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | 4 | # Variáveis de ambiente 5 | export ACCEPT_EULA=Y 6 | export SA_PASSWORD='yourStrong(!)Password' 7 | 8 | # Instalação do FreeTDS para acesso ao SQL Server 9 | apt-get -y --allow-unauthenticated update 10 | apt-get -y --allow-unauthenticated install libodbc1 freetds-dev freetds-bin 11 | 12 | /opt/mssql/bin/sqlservr & 13 | sleep 30 14 | 15 | mv /tmp/sip_5_0_0_BD_Ref_Exec.bak /tmp/sip_sqlserver.bak 16 | mv /tmp/sei_5_0_0_BD_Ref_Exec.bak /tmp/sei_sqlserver.bak 17 | 18 | tsql -S localhost -U sa -P $SA_PASSWORD < /tmp/restore.sql 19 | 20 | # Remover arquivos temporários 21 | rm -rf /tmp/* 22 | 23 | exit 0 24 | -------------------------------------------------------------------------------- /containers/databases/sqlserver-sei50/assets/restore.sql: -------------------------------------------------------------------------------- 1 | 2 | -- TODO: Padronizar datafiles da base de dados em SQL Server 3 | RESTORE DATABASE [sei] FROM DISK = N'/tmp/sei_sqlserver.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5, 4 | MOVE 'gedoc' TO '/var/opt/mssql/data/sei_data.mdf', 5 | MOVE 'SEI_data3' TO '/var/opt/mssql/data/sei_data1.ndf', 6 | MOVE 'SEI_data4' TO '/var/opt/mssql/data/sei_data2.ndf', 7 | MOVE 'SEI_log2' TO '/var/opt/mssql/data/sei_data3.ndf', 8 | MOVE 'Sei_Log3' TO '/var/opt/mssql/data/sei_data4.ndf', 9 | MOVE 'gedoc_log' TO '/var/opt/mssql/data/sei_1og.ldf' 10 | GO 11 | 12 | -- TODO: Padronizar datafiles da base de dados em SQL Server 13 | RESTORE DATABASE [sip] FROM DISK = N'/tmp/sip_sqlserver.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 5, 14 | MOVE 'sip_Data' TO '/var/opt/mssql/data/sip_data.mdf', 15 | MOVE 'sip_Log' TO '/var/opt/mssql/data/sip_log.ldf' 16 | GO 17 | 18 | USE sei; 19 | GO 20 | 21 | DROP USER IF EXISTS [sei_user] 22 | GO 23 | 24 | CREATE LOGIN sei_user 25 | WITH PASSWORD = 'sei_user', CHECK_POLICY=OFF; 26 | GO 27 | 28 | CREATE USER sei_user FOR LOGIN sei_user; 29 | GO 30 | 31 | EXEC sp_addrolemember 'db_owner', 'sei_user' 32 | GO 33 | 34 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 35 | GO 36 | 37 | delete from auditoria_protocolo; 38 | GO 39 | 40 | USE sip; 41 | GO 42 | 43 | DROP USER IF EXISTS [sip_user] 44 | GO 45 | 46 | CREATE LOGIN sip_user 47 | WITH PASSWORD = 'sip_user', CHECK_POLICY=OFF; 48 | GO 49 | 50 | CREATE USER sip_user FOR LOGIN sip_user; 51 | GO 52 | 53 | EXEC sp_addrolemember 'db_owner', 'sip_user' 54 | GO 55 | 56 | update orgao set sigla='ABC', descricao='ORGAO ABC' where id_orgao=0; 57 | GO 58 | 59 | update sistema set pagina_inicial='http://localhost/sip' where sigla='SIP'; 60 | GO 61 | 62 | update sistema set pagina_inicial='http://localhost/sei/inicializar.php', web_service='http://localhost/sei/controlador_ws.php?servico=sip' where sigla='SEI'; 63 | GO 64 | 65 | update orgao set sin_autenticar='N' where id_orgao=0; 66 | GO 67 | 68 | delete from seq_infra_auditoria 69 | GO 70 | -------------------------------------------------------------------------------- /containers/dbadminer/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # dbadminer - apenas redundancia do repo original 3 | ################################################################################ 4 | 5 | FROM dockette/adminer:full -------------------------------------------------------------------------------- /containers/envcontainers.env.modelo: -------------------------------------------------------------------------------- 1 | DOCKER_REGISTRY=processoeletronico 2 | DOCKER_CONTAINER_VERSAO_PRODUTO=3.6.6 3 | 4 | IMAGEM_BASE_CENTOS=${DOCKER_REGISTRY}/base-centos7 5 | IMAGEM_BASE_CENTOS_VERSAO=latest 6 | 7 | IMAGEM_BASE_ROCKY93=${DOCKER_REGISTRY}/base-rocky93 8 | IMAGEM_BASE_ROCKY93_VERSAO=latest 9 | 10 | IMAGEM_BASE_MARIADB=${DOCKER_REGISTRY}/base-mariadb10.5 11 | IMAGEM_BASE_MARIADB_VERSAO=latest 12 | 13 | IMAGEM_BASE_MYSQL8=${DOCKER_REGISTRY}/base-mysql8 14 | IMAGEM_BASE_MYSQL8_VERSAO=latest 15 | 16 | IMAGEM_BASE_SQLSERVER=${DOCKER_REGISTRY}/base-sqlserver2019 17 | IMAGEM_BASE_SQLSERVER_VERSAO=latest 18 | 19 | IMAGEM_BASE_ORACLE=${DOCKER_REGISTRY}/base-oracle11g 20 | IMAGEM_BASE_ORACLE_VERSAO=latest 21 | 22 | IMAGEM_BASE_POSTGRES=${DOCKER_REGISTRY}/base-postgres15 23 | IMAGEM_BASE_POSTGRES_VERSAO=latest 24 | 25 | IMAGEM_BASE_APP=${DOCKER_REGISTRY}/base-app 26 | IMAGEM_BASE_APP_VERSAO=latest 27 | 28 | IMAGEM_BASE_APP_PHP8=${DOCKER_REGISTRY}/base-app-php8 29 | IMAGEM_BASE_APP_PHP8_VERSAO=latest 30 | 31 | IMAGEM_BASE_APP_AGENDADOR=${DOCKER_REGISTRY}/app-ci 32 | IMAGEM_BASE_APP_AGENDADOR_VERSAO=latest 33 | 34 | IMAGEM_BASE_APP_PHP8_AGENDADOR=${DOCKER_REGISTRY}/app-ci-php8 35 | IMAGEM_BASE_APP_PHP8_AGENDADOR_VERSAO=latest 36 | 37 | IMAGEM_BASE_PHPMEMCACHEDADMIN=${DOCKER_REGISTRY}/phpmemcachedadmin-base 38 | IMAGEM_BASE_PHPMEMCACHEDADMIN_VERSAO=latest 39 | 40 | IMAGEM_BASE_OPENLDAP=${DOCKER_REGISTRY}/openldap-base 41 | IMAGEM_BASE_OPENLDAP_VERSAO=latest 42 | 43 | IMAGEM_BASE_HAPROXY=${DOCKER_REGISTRY}/haproxy-base 44 | IMAGEM_BASE_HAPROXY_VERSAO=latest 45 | 46 | IMAGEM_BASE_TRAEFIK=${DOCKER_REGISTRY}/traefik-base 47 | IMAGEM_BASE_TRAEFIK_VERSAO=latest 48 | -------------------------------------------------------------------------------- /containers/haproxy/haproxy-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # HAPROXY - apenas redundancia do repo original 3 | ################################################################################ 4 | 5 | FROM dockercloud/haproxy -------------------------------------------------------------------------------- /containers/haproxy/haproxy/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG IMAGEM_BASE=processoeletronico/haproxy-base:latest 2 | 3 | FROM ${IMAGEM_BASE} 4 | 5 | ADD files/cert0.pem /mycertexample/ 6 | -------------------------------------------------------------------------------- /containers/haproxy/haproxy/files/cert0.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN RSA PRIVATE KEY----- 2 | MIIEowIBAAKCAQEAxDbvdDEZVT+VvJ3JDrwx7swGXLWOgZh9mooyh3r9A8hv7gaG 3 | Pw/nXIe8yY1rGtjNkwv8nq/yDXaoaX3C4t0zVcTMKod1Gfw3kYT/mK1An8C24dSq 4 | HxsUjvq7Am16b2UyCpgDQV5ewA70IgOySQ5sQ3OmcsqB8IHw53otmN6z9ZdRSEq7 5 | FeOqlpApCOAGuo6bttFcD4Ka/jz3I46s0bSsvwblHXvAnnmT6hLv2ROMSJ/Pzt3N 6 | 1Z1zVhOpx7W7BUBuawbKQTvyWaE8E3u9GEVKCovST3oZb2n+WvNQUx9f4nVGXD0s 7 | VcpJl27358Nv2i2LPwuArNPuLkD6r+tVgN5tMwIDAQABAoIBAH3IKaB2iSLY7AhJ 8 | rcXAZtIKAFoWGRCCzKHwzYuEEAYIy5funsh2TX5HlYIvIeXH7aDCImMnrydqVXOq 9 | pu//lRT6X1c0FqFdydGDTMZ26eJ/C72hMp1WIsu1d4SK4d3fJUEdSZjyAhNkgqP7 10 | cqLamBR1YtJbdwjSg7gf3nMM8JgSFS5dyxcbWF2qWyp93XfmnuTSw0muimBtZHTT 11 | dKfqXqz0wO4QGERlCWqpv6VxMucmsx0LJ23NxEPbiss0tzUht7Df/gisug1Oe3MP 12 | 1/ewJaOvvwuBB2q7ss1n2jr4hkxTaiv6h3Mm/Zk+GNo2H0HXzGbp4weI6zdunyhI 13 | 9NVwtsECgYEA4uJh+FytpCAalEG+naWZ2Fi2P3ypmxU5bJrICE9tln74M1jJYeA/ 14 | epoylq7MqrSmClQ2AWYc+7JtxEb1rHPzxFaQUyy3brRZxDTpXKEx2wcs06tpxTgd 15 | iqAooVe27o/S69hf6jMtrmUwplvUvaX7kNwLYoC07qrP2zoiCMczeVsCgYEA3WT9 16 | QBLLg53z9InAIlZ5DFKEpnqb2E8LdRJX4NBgvKfSKYyhXgJFa/dObnkSpUZPdOA7 17 | gId0RIqd+7DeEinmPWenMgZKcFQ7fvoq3cyOBtb6Q8UjitCwhbX/jYxRpS95+ZuZ 18 | rDmU4AboiKFEEbnLeMYRGD2lc99rCbmkj7C8ywkCgYEA3TshjKvSJVeokygIVnBD 19 | s1HNY9qLB02K0PucUX4hvb3RB0BsHaQsQcBZ09RefZXo0emLP5HycPtrTRhkNeRa 20 | rfg6gt/3fVserNNrOYd0tb4pV7ytRkGRjLre43RETBqx8Ibr/9InmQXSimTA7KwM 21 | wRPPhh06T/7+7yWgSi7zYkECgYA6hRY32H/440h3q+2gZfELI8iyZJhLHeGuaVHX 22 | N91KIKX5m5WPztPgzPbrVo9qJmKcRyUTPTqrX2SRAdhBPtgABST5oRYOCQXM831f 23 | MVGdVzfBsBtL9wuh3FCXbq6qFhmMs+dz0aibatgOPWpLsSuqWdhs6uaP8U9Ou8ZW 24 | wOW2WQKBgARB0T67mc8K9+mJnC++FxQ+snRFkveKwqL1QP3P0L3NvHunl+LDVPe6 25 | +eHXlEPhkHEGckSt1SlIKgzQvRdAgj+NkP39YdAjhaMEH+AmH6IzeDZ1IeEZDg3E 26 | XFmR64L9ILXXkELlAI5gxn8z6sIrhSiE0ttlFnIV0EJJQTPJw5Li 27 | -----END RSA PRIVATE KEY----- 28 | -----BEGIN CERTIFICATE----- 29 | MIIDxDCCAqygAwIBAgIBATANBgkqhkiG9w0BAQsFADBtMQswCQYDVQQGEwJhYTEL 30 | MAkGA1UECBMCYWExCzAJBgNVBAcTAmFhMQswCQYDVQQKEwJhYTELMAkGA1UECxMC 31 | YWExFzAVBgNVBAMTDnd3dy5rb2h6ZWUueHl6MREwDwYJKoZIhvcNAQkBFgJhYTAe 32 | Fw0xNzEyMjEwNDE0MDBaFw0yODEyMjEwNDE0MDBaMG0xCzAJBgNVBAYTAmFhMQsw 33 | CQYDVQQIEwJhYTELMAkGA1UEBxMCYWExCzAJBgNVBAoTAmFhMQswCQYDVQQLEwJh 34 | YTEXMBUGA1UEAxMOd3d3LmtvaHplZS54eXoxETAPBgkqhkiG9w0BCQEWAmFhMIIB 35 | IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxDbvdDEZVT+VvJ3JDrwx7swG 36 | XLWOgZh9mooyh3r9A8hv7gaGPw/nXIe8yY1rGtjNkwv8nq/yDXaoaX3C4t0zVcTM 37 | Kod1Gfw3kYT/mK1An8C24dSqHxsUjvq7Am16b2UyCpgDQV5ewA70IgOySQ5sQ3Om 38 | csqB8IHw53otmN6z9ZdRSEq7FeOqlpApCOAGuo6bttFcD4Ka/jz3I46s0bSsvwbl 39 | HXvAnnmT6hLv2ROMSJ/Pzt3N1Z1zVhOpx7W7BUBuawbKQTvyWaE8E3u9GEVKCovS 40 | T3oZb2n+WvNQUx9f4nVGXD0sVcpJl27358Nv2i2LPwuArNPuLkD6r+tVgN5tMwID 41 | AQABo28wbTAMBgNVHRMBAf8EAjAAMB0GA1UdDgQWBBTcNn58ungDMPtmoMFhBYXG 42 | LtfpGDALBgNVHQ8EBAMCBeAwEQYJYIZIAYb4QgEBBAQDAgZAMB4GCWCGSAGG+EIB 43 | DQQRFg94Y2EgY2VydGlmaWNhdGUwDQYJKoZIhvcNAQELBQADggEBAC0SVGGgcYIn 44 | HsFlXSdzzTA8PFA7AULRYwuIxzYzF0FtfZwuFdoCUZX8MKXPjVwReN0fclSWKQiV 45 | WpnKxZki3aseS54gLhlZKhiyk8ibsV5nWarr5I0YA8OBR26Z+PCaYVEubxtdr/0x 46 | Dkq4H6VIbVJFPdqvE0CYOl74BJ4M8p3dWxtodUhDt82kSXnXrdjomj7nbr4YEH/3 47 | S/LVXZahMYuUM2RP1WPRoax/j9dSukMkL0Nd78PXVmx/jKPT+oysX3/bQ8OgWzdv 48 | o4vtB7hnKU28Oo7/tzb4HxHrN4Ov2L2D03d54Y47QNceZVaDa3hlygKTtaZa0wm+ 49 | CjcPERzBvWo= 50 | -----END CERTIFICATE----- 51 | -------------------------------------------------------------------------------- /containers/jod/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container JOD utilizado pelo SEI 3 | ################################################################################ 4 | 5 | ARG IMAGEM_BASE=processoeletronico/base-centos7:latest 6 | 7 | FROM ${IMAGEM_BASE} 8 | 9 | ############################# INÍCIO DA INSTALAÇÃO ############################# 10 | ENV TERM=xterm 11 | 12 | ADD assets/install.sh \ 13 | assets/entrypoint.sh \ 14 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/jodconverter-tomcat-2.2.2.zip \ 15 | / 16 | 17 | RUN sh /install.sh && rm -rf /install.sh 18 | ############################## FIM DA INSTALACAO ############################### 19 | 20 | USER jodconverter 21 | 22 | ENTRYPOINT ["/entrypoint.sh"] 23 | EXPOSE 8080 -------------------------------------------------------------------------------- /containers/jod/assets/entrypoint.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | /usr/bin/soffice --headless --nologo --nofirststartwizard --accept="socket,host=127.0.0.1,port=8100;urp" & > /dev/null 2>&1 4 | /opt/jodconverter-tomcat-2.2.2/bin/catalina.sh run 5 | -------------------------------------------------------------------------------- /containers/jod/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | # Configuração do pacote de línguas pt_BR 4 | localedef pt_BR -i pt_BR -f ISO-8859-1 5 | 6 | # Instalação do utilitários necessários para o provisionamento 7 | yum -y install unzip java-1.7.0-openjdk wget unzip libreoffice libreoffice-headless 8 | 9 | # Cria grupo jodconverter e usuário jodconverter para rodar como não-root 10 | groupadd jodconverter 11 | useradd --create-home --home-dir /home/jodconverter --shell /bin/bash --gid jodconverter --groups jodconverter --uid 1001 jodconverter 12 | 13 | 14 | # Instalação da api de serviços de conversão de documentos 15 | unzip /jodconverter-tomcat-2.2.2.zip -d /opt 16 | rm -rf /jodconverter-tomcat-2.2.2.zip 17 | chown -R jodconverter:jodconverter /opt/jodconverter-tomcat-2.2.2 18 | 19 | # Remover arquivos temporários 20 | yum clean all 21 | rm -rf /var/cache/yum 22 | 23 | # Configuração de permissões de execução no script de inicialização do container 24 | chmod +x /entrypoint.sh 25 | 26 | exit 0 27 | -------------------------------------------------------------------------------- /containers/jod4.4.8/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM alpine:3.21 2 | 3 | ADD https://github.com/pengovbr/sei-docker-binarios/raw/refs/heads/main/pacoteslinux/jodconverter-4.4.8.jar /opt/app/ 4 | ADD assets/application.yaml /opt/app/ 5 | 6 | RUN apk add -f --no-cache \ 7 | libreoffice \ 8 | openjdk17-jdk \ 9 | font-terminus \ 10 | font-inconsolata \ 11 | font-dejavu \ 12 | font-noto \ 13 | font-noto-cjk \ 14 | font-awesome \ 15 | font-noto-extra 16 | 17 | CMD java -Xmx2G -jar /opt/app/jodconverter-4.4.8.jar 18 | -------------------------------------------------------------------------------- /containers/jod4.4.8/assets/application.yaml: -------------------------------------------------------------------------------- 1 | # amount of libreOffice instances to start - one for each given port. So this means 2 2 | jodconverter: 3 | local: 4 | port-numbers: 5 | - 2002 6 | - 2003 7 | # change the tmp folder 8 | working-dir: /tmp 9 | # change upload sizes 10 | spring: 11 | servlet: 12 | multipart: 13 | max-file-size: 1024MB 14 | max-request-size: 1024MB 15 | # change the server port (where the REST app is listenting) 16 | server: 17 | port: 8080 -------------------------------------------------------------------------------- /containers/mailcatcher/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construção do container MailCatcher utilizado pelo SEI 3 | # Apenas redundancia do repo oficial 4 | ################################################################################ 5 | 6 | FROM schickling/mailcatcher 7 | 8 | ############################# INÍCIO DA INSTALAÇÃO ############################# 9 | ENV TERM xterm 10 | 11 | EXPOSE 1080 -------------------------------------------------------------------------------- /containers/memcached/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Memcached Oficial - apenas redundancia do repo oficial 3 | ################################################################################ 4 | 5 | FROM memcached:latest -------------------------------------------------------------------------------- /containers/openldap/openldap-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # openldap - apenas redundancia do repo original 3 | ################################################################################ 4 | 5 | FROM osixia/openldap:1.2.2 -------------------------------------------------------------------------------- /containers/openldap/openldap/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG IMAGEM_BASE=processoeletronico/openldap-base:latest 2 | 3 | FROM ${IMAGEM_BASE} 4 | 5 | ADD files/* /container/service/slapd/assets/config/bootstrap/ldif/ 6 | -------------------------------------------------------------------------------- /containers/openldap/openldap/files/50-grupo.ldif: -------------------------------------------------------------------------------- 1 | dn: cn=grupo1,dc=pen,dc=gov,dc=br 2 | objectClass: top 3 | objectClass: posixGroup 4 | gidNumber: 678 -------------------------------------------------------------------------------- /containers/openldap/openldap/files/51-usuario.ldif: -------------------------------------------------------------------------------- 1 | dn: cn=teste,dc=pen,dc=gov,dc=br 2 | objectClass: top 3 | objectClass: account 4 | objectClass: posixAccount 5 | objectClass: shadowAccount 6 | cn: teste 7 | uid: teste 8 | uidNumber: 16859 9 | gidNumber: 100 10 | homeDirectory: /home/adam 11 | loginShell: /bin/bash 12 | gecos: adam 13 | userPassword: 123456 14 | shadowLastChange: 0 15 | shadowMax: 0 16 | shadowWarning: 0 17 | 18 | -------------------------------------------------------------------------------- /containers/phpldapadmin/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # phpldapadmin - apenas redundancia do repo original 3 | ################################################################################ 4 | 5 | FROM osixia/phpldapadmin:0.9.0 -------------------------------------------------------------------------------- /containers/phpmemcachedadmin/phpmemcachedadmin-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # phpmemcachedadmin - apenas redundancia do repo original 3 | ################################################################################ 4 | 5 | FROM processoeletronico/sei4-phpmemcachedadmin1.2.2:1.0.0 -------------------------------------------------------------------------------- /containers/phpmemcachedadmin/phpmemcachedadmin/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG IMAGEM_BASE=processoeletronico/phpmemcachedadmin-base:latest 2 | 3 | FROM ${IMAGEM_BASE} 4 | 5 | ADD Memcache.php /usr/share/nginx/html/Config/ 6 | ADD ./start.sh /start.sh -------------------------------------------------------------------------------- /containers/phpmemcachedadmin/phpmemcachedadmin/Memcache.php: -------------------------------------------------------------------------------- 1 | 'Server', 4 | 'slabs_api' => 'Server', 5 | 'items_api' => 'Server', 6 | 'get_api' => 'Server', 7 | 'set_api' => 'Server', 8 | 'delete_api' => 'Server', 9 | 'flush_all_api' => 'Server', 10 | 'connection_timeout' => '1', 11 | 'max_item_dump' => '100', 12 | 'refresh_rate' => 5, 13 | 'memory_alert' => '80', 14 | 'hit_rate_alert' => '90', 15 | 'eviction_alert' => '0', 16 | 'file_path' => 'Temp/', 17 | 'servers' => 18 | array ( 19 | 'Default' => 20 | array ( 21 | 'MemcachedSEI' => 22 | array ( 23 | 'hostname' => 'memcached', 24 | 'port' => '11211', 25 | ), 26 | ), 27 | ), 28 | ); 29 | -------------------------------------------------------------------------------- /containers/phpmemcachedadmin/phpmemcachedadmin/start.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | if [ ! -d "/phpmemcachedadmin/Config" ]; then 4 | mv /usr/share/nginx/html/Config /phpmemcachedadmin 5 | ln -s /phpmemcachedadmin/Config /usr/share/nginx/html/ 6 | else 7 | rm -fr /usr/share/nginx/html/Config 8 | ln -s /phpmemcachedadmin/Config /usr/share/nginx/html/ 9 | fi 10 | 11 | /usr/sbin/php5-fpm -D && /usr/sbin/nginx & 12 | 13 | cd /usr/share/nginx/html 14 | ln -sf . memcachedadmin 15 | cd - 16 | tail -f /dev/null -------------------------------------------------------------------------------- /containers/solr-9.4.0/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container Solr utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | ################################################################################ 6 | 7 | ARG IMAGEM_BASE=processoeletronico/base-rocky93:latest 8 | 9 | FROM ${IMAGEM_BASE} 10 | 11 | ENV TERM xterm 12 | 13 | ADD assets/ \ 14 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/solr-9.4.0.tgz.partaa \ 15 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/solr-9.4.0.tgz.partab \ 16 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/solr-9.4.0.tgz.partac \ 17 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/msttcore-fonts-2.0-3.noarch.rpm \ 18 | /tmp/ 19 | 20 | RUN ls -lh /tmp && sh /tmp/install.sh && rm -rf /tmp/* 21 | 22 | USER solr 23 | 24 | EXPOSE 8983 25 | CMD ["/command.sh"] 26 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/command.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | /opt/solr/bin/solr -p 8983 -f 4 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | yum -y update && yum -y install lsof wget glibc-locale-source procps bc 6 | 7 | localedef pt_BR -i pt_BR -f ISO-8859-1 8 | 9 | dnf -y install java-17-openjdk 10 | 11 | # Instalação de pacote de fontes do windows 12 | rpm -Uvh /tmp/msttcore-fonts-2.0-3.noarch.rpm 13 | 14 | # join splited solr 15 | cat /tmp/solr-9.4.0.tgz.part* > /tmp/solr-9.4.0.tgz 16 | 17 | mv /tmp/solr9.4.0sei/* /tmp/ 18 | 19 | useradd solr 20 | 21 | chmod +x /tmp/sei-solr-9.4.0.sh 22 | 23 | cd /tmp 24 | 25 | /tmp/sei-solr-9.4.0.sh 26 | 27 | echo "" >> /opt/solr/bin/solr.in.sh 28 | echo 'SOLR_OPTS="$SOLR_OPTS -Dsolr.allowPaths=/dados"' >> /opt/solr/bin/solr.in.sh 29 | echo 'SOLR_JETTY_HOST="0.0.0.0"' >> /opt/solr/bin/solr.in.sh 30 | 31 | mv /tmp/command.sh / 32 | 33 | yum clean all 34 | rm -rf /var/cache/yum 35 | 36 | # Configuração de permissões de execução no script de inicialização do container 37 | chmod +x /command.sh 38 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/log4j.properties: -------------------------------------------------------------------------------- 1 | # Logging level 2 | solr.log=logs 3 | log4j.rootLogger=WARN, file, CONSOLE 4 | 5 | log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 6 | 7 | log4j.appender.CONSOLE.layout=org.apache.log4j.EnhancedPatternLayout 8 | log4j.appender.CONSOLE.layout.ConversionPattern=%-4r %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%n 9 | 10 | #- size rotation with log cleanup. 11 | log4j.appender.file=org.apache.log4j.RollingFileAppender 12 | log4j.appender.file.MaxFileSize=4MB 13 | log4j.appender.file.MaxBackupIndex=9 14 | 15 | #- File to log to and log format 16 | log4j.appender.file.File=${solr.log}/solr.log 17 | log4j.appender.file.layout=org.apache.log4j.EnhancedPatternLayout 18 | log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m\n 19 | 20 | log4j.logger.org.apache.zookeeper=WARN 21 | log4j.logger.org.apache.hadoop=WARN 22 | 23 | # set to INFO to enable infostream log messages 24 | log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF 25 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/security.json: -------------------------------------------------------------------------------- 1 | { 2 | "authentication":{ 3 | "blockUnknown": true, 4 | "class":"solr.BasicAuthPlugin", 5 | "credentials":{"admin":"etj8dxXw64oqYMn1V3FRkIT81TlGQEcdvhm/Y9OOt90= ofmrnvtF35ksk37rQjLd/i6PxAlqFD/24ySenLSQeLA=","sei":"mmiwzGKuZpDvyzG/B9vnBFnHVbblaDr7kw84alKR15U= x6C+p2Oscp7MDXHuImMw7rfy5nvJ32H+Dc+6EL7145Y="} 6 | }, 7 | "authorization":{ 8 | "class":"solr.RuleBasedAuthorizationPlugin", 9 | "permissions":[{"name":"read", "role":"*"},{"name":"update", "role":"*"},{"name":"all", "role":"admin"}], 10 | "user-role":{"admin":"admin","sei": "basic"} 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/sei-cores-9.4.0/sei-bases-conhecimento/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-bases-conhecimento 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-bases-conhecimento/conteudo 5 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/sei-cores-9.4.0/sei-protocolos/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-protocolos 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-protocolos/conteudo 5 | 6 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/sei-cores-9.4.0/sei-publicacoes/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-publicacoes 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-publicacoes/conteudo 5 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/sei-solr-9.4.0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | 4 | for n in /tmp/solr-9.4.0.tgz /tmp/log4j.properties /tmp/solr.service 5 | do 6 | if [ ! -f $n ]; then 7 | echo "Arquivo ["$n"] nao encontrado." 8 | exit 1 9 | fi 10 | done 11 | 12 | if [ ! -d "/tmp/sei-cores-9.4.0" ]; then 13 | echo "Diretorio [/tmp/sei-cores-9.4.0] nao encontrado." 14 | exit 1 15 | fi 16 | 17 | cd /tmp 18 | 19 | tar -xf /tmp/solr-9.4.0.tgz 20 | 21 | cp -Rf /tmp/solr-9.4.0 /opt/solr 22 | 23 | mkdir -v /dados 24 | 25 | ln -vs /dados /opt/solr/server/solr 26 | 27 | cp -Rfv /tmp/log4j.properties /opt/solr/server/resources 28 | 29 | cp -Rf /tmp/sei-cores-9.4.0/* /dados 30 | 31 | mv /tmp/solr-9.4.0/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml /opt/solr/solrconfig.bak 32 | 33 | cp -R /tmp/solr-9.4.0/server/solr/configsets/sample_techproducts_configs/conf /dados/sei-protocolos 34 | cp -R /tmp/solr-9.4.0/server/solr/configsets/sample_techproducts_configs/conf /dados/sei-bases-conhecimento 35 | cp -R /tmp/solr-9.4.0/server/solr/configsets/sample_techproducts_configs/conf /dados/sei-publicacoes 36 | 37 | rm -Rf /opt/solr/example 38 | 39 | mkdir -v /dados/sei-protocolos/conteudo 40 | mkdir -v /dados/sei-bases-conhecimento/conteudo 41 | mkdir -v /dados/sei-publicacoes/conteudo 42 | 43 | cp -f /tmp/security.json /opt/solr/server/solr/security.json 44 | 45 | chown -R solr.solr /dados 46 | chown -R solr.solr /opt/solr/ 47 | 48 | cp solr.service /etc/systemd/system/solr.service 49 | 50 | -------------------------------------------------------------------------------- /containers/solr-9.4.0/assets/solr9.4.0sei/solr.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Apache SOLR 3 | After=syslog.target network.target remote-fs.target nss-lookup.target 4 | [Service] 5 | PIDFile=/opt/solr/bin/solr-8983.pid 6 | ExecStart=/opt/solr/bin/solr -p 8983 7 | User=solr 8 | ExecReload=/bin/kill -s HUP $MAINPID 9 | ExecStop=/opt/solr/bin/solr stop -p 8983 10 | PrivateTmp=true 11 | LimitNPROC=65000 12 | LimitNOFILE=65000 13 | 14 | [Install] 15 | WantedBy=multi-user.target 16 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container Solr utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | ################################################################################ 6 | 7 | ARG IMAGEM_BASE=processoeletronico/base-rocky93:latest 8 | 9 | FROM ${IMAGEM_BASE} 10 | 11 | ENV TERM xterm 12 | 13 | ADD assets/ \ 14 | https://archive.apache.org/dist/solr/solr/9.6.1/solr-9.6.1.tgz \ 15 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/msttcore-fonts-2.0-3.noarch.rpm \ 16 | /tmp/ 17 | 18 | RUN ls -lh /tmp && sh /tmp/install.sh && rm -rf /tmp/* 19 | 20 | USER solr 21 | 22 | EXPOSE 8983 23 | CMD ["/command.sh"] 24 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/command.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | /opt/solr/bin/solr -p 8983 -f 4 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | set -e 4 | 5 | yum -y update && yum -y install lsof wget glibc-locale-source procps bc 6 | 7 | localedef pt_BR -i pt_BR -f ISO-8859-1 8 | 9 | dnf -y install java-17-openjdk 10 | 11 | # Instalação de pacote de fontes do windows 12 | rpm -Uvh /tmp/msttcore-fonts-2.0-3.noarch.rpm 13 | 14 | # join splited solr 15 | # cat /tmp/solr-9.6.1.tgz.part* > /tmp/solr-9.6.1.tgz 16 | 17 | mv /tmp/solr9.6.1sei/* /tmp/ 18 | 19 | useradd solr 20 | 21 | chmod +x /tmp/sei-solr-9.6.1.sh 22 | 23 | cd /tmp 24 | 25 | /tmp/sei-solr-9.6.1.sh 26 | 27 | echo "" >> /opt/solr/bin/solr.in.sh 28 | echo 'SOLR_OPTS="$SOLR_OPTS -Dsolr.allowPaths=/dados"' >> /opt/solr/bin/solr.in.sh 29 | echo 'SOLR_JETTY_HOST="0.0.0.0"' >> /opt/solr/bin/solr.in.sh 30 | 31 | mv /tmp/command.sh / 32 | 33 | yum clean all 34 | rm -rf /var/cache/yum 35 | 36 | # Configuração de permissões de execução no script de inicialização do container 37 | chmod +x /command.sh 38 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/log4j.properties: -------------------------------------------------------------------------------- 1 | # Logging level 2 | solr.log=logs 3 | log4j.rootLogger=WARN, file, CONSOLE 4 | 5 | log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 6 | 7 | log4j.appender.CONSOLE.layout=org.apache.log4j.EnhancedPatternLayout 8 | log4j.appender.CONSOLE.layout.ConversionPattern=%-4r %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%n 9 | 10 | #- size rotation with log cleanup. 11 | log4j.appender.file=org.apache.log4j.RollingFileAppender 12 | log4j.appender.file.MaxFileSize=4MB 13 | log4j.appender.file.MaxBackupIndex=9 14 | 15 | #- File to log to and log format 16 | log4j.appender.file.File=${solr.log}/solr.log 17 | log4j.appender.file.layout=org.apache.log4j.EnhancedPatternLayout 18 | log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m\n 19 | 20 | log4j.logger.org.apache.zookeeper=WARN 21 | log4j.logger.org.apache.hadoop=WARN 22 | 23 | # set to INFO to enable infostream log messages 24 | log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF 25 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/security.json: -------------------------------------------------------------------------------- 1 | { 2 | "authentication":{ 3 | "blockUnknown": true, 4 | "class":"solr.BasicAuthPlugin", 5 | "credentials":{"admin":"etj8dxXw64oqYMn1V3FRkIT81TlGQEcdvhm/Y9OOt90= ofmrnvtF35ksk37rQjLd/i6PxAlqFD/24ySenLSQeLA=","sei":"mmiwzGKuZpDvyzG/B9vnBFnHVbblaDr7kw84alKR15U= x6C+p2Oscp7MDXHuImMw7rfy5nvJ32H+Dc+6EL7145Y="} 6 | }, 7 | "authorization":{ 8 | "class":"solr.RuleBasedAuthorizationPlugin", 9 | "permissions":[{"name":"read", "role":"*"},{"name":"update", "role":"*"},{"name":"all", "role":"admin"}], 10 | "user-role":{"admin":"admin","sei": "basic"} 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/sei-cores-9.6.1/sei-bases-conhecimento/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-bases-conhecimento 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-bases-conhecimento/conteudo 5 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/sei-cores-9.6.1/sei-protocolos/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-protocolos 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-protocolos/conteudo 5 | 6 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/sei-cores-9.6.1/sei-publicacoes/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-publicacoes 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-publicacoes/conteudo 5 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/sei-solr-9.6.1.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | VERSAOSOLR=9.6.1 4 | 5 | clear 6 | 7 | for n in /tmp/solr-${VERSAOSOLR}.tgz /tmp/log4j.properties /tmp/solr.service 8 | do 9 | if [ ! -f $n ]; then 10 | echo "Arquivo ["$n"] nao encontrado." 11 | exit 1 12 | fi 13 | done 14 | 15 | if [ ! -d "/tmp/sei-cores-${VERSAOSOLR}" ]; then 16 | echo "Diretorio [/tmp/sei-cores-${VERSAOSOLR}] nao encontrado." 17 | exit 1 18 | fi 19 | 20 | cd /tmp 21 | 22 | tar -xf /tmp/solr-${VERSAOSOLR}.tgz 23 | 24 | cp -Rf /tmp/solr-${VERSAOSOLR} /opt/solr 25 | 26 | mkdir -v /dados 27 | 28 | ln -vs /dados /opt/solr/server/solr 29 | 30 | cp -Rfv /tmp/log4j.properties /opt/solr/server/resources 31 | 32 | cp -Rf /tmp/sei-cores-${VERSAOSOLR}/* /dados 33 | 34 | mv /tmp/solr-${VERSAOSOLR}/server/solr/configsets/sample_techproducts_configs/conf/solrconfig.xml /opt/solr/solrconfig.bak 35 | 36 | cp -R /tmp/solr-${VERSAOSOLR}/server/solr/configsets/sample_techproducts_configs/conf /dados/sei-protocolos 37 | cp -R /tmp/solr-${VERSAOSOLR}/server/solr/configsets/sample_techproducts_configs/conf /dados/sei-bases-conhecimento 38 | cp -R /tmp/solr-${VERSAOSOLR}/server/solr/configsets/sample_techproducts_configs/conf /dados/sei-publicacoes 39 | 40 | rm -Rf /opt/solr/example 41 | 42 | mkdir -v /dados/sei-protocolos/conteudo 43 | mkdir -v /dados/sei-bases-conhecimento/conteudo 44 | mkdir -v /dados/sei-publicacoes/conteudo 45 | 46 | cp -f /tmp/security.json /opt/solr/server/solr/security.json 47 | 48 | chown -R solr.solr /dados 49 | chown -R solr.solr /opt/solr/ 50 | 51 | cp solr.service /etc/systemd/system/solr.service 52 | 53 | -------------------------------------------------------------------------------- /containers/solr-9.6.1/assets/solr9.6.1sei/solr.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Apache SOLR 3 | After=syslog.target network.target remote-fs.target nss-lookup.target 4 | [Service] 5 | PIDFile=/opt/solr/bin/solr-8983.pid 6 | ExecStart=/opt/solr/bin/solr -p 8983 7 | User=solr 8 | ExecReload=/bin/kill -s HUP $MAINPID 9 | ExecStop=/opt/solr/bin/solr stop -p 8983 10 | PrivateTmp=true 11 | LimitNPROC=65000 12 | LimitNOFILE=65000 13 | 14 | [Install] 15 | WantedBy=multi-user.target 16 | -------------------------------------------------------------------------------- /containers/solr/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Dockerfile de construcao do container Solr utilizado pelo SEI 3 | # 4 | # Container preparado e configurado para uso em desenvolvimento e testes 5 | ################################################################################ 6 | 7 | ARG IMAGEM_BASE=processoeletronico/base-centos7:latest 8 | 9 | FROM ${IMAGEM_BASE} 10 | 11 | ENV TERM xterm 12 | 13 | ADD assets/ \ 14 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/solr-8.2.0.tgz.partaa \ 15 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/solr-8.2.0.tgz.partab \ 16 | https://github.com/spbgovbr/sei-docker-binarios/raw/main/pacoteslinux/msttcore-fonts-2.0-3.noarch.rpm \ 17 | /tmp/ 18 | 19 | RUN ls -lh /tmp && sh /tmp/install.sh && rm -rf /tmp/* 20 | 21 | EXPOSE 8983 22 | CMD ["/command.sh"] 23 | -------------------------------------------------------------------------------- /containers/solr/assets/command.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | /opt/solr/bin/solr start -f -force -p 8983 4 | -------------------------------------------------------------------------------- /containers/solr/assets/install.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env sh 2 | 3 | set -e 4 | 5 | # Instalação do pacote Java JDK e utilitários utilizados no provisionamento 6 | #apk update && apk add lsof curl bash openjdk8-jre 7 | yum -y update && yum -y install lsof curl wget java-1.8.0-openjdk 8 | 9 | # Instalação de pacote de fontes do windows 10 | rpm -Uvh /tmp/msttcore-fonts-2.0-3.noarch.rpm 11 | 12 | # Configuração do pacote de línguas pt_BR 13 | localedef pt_BR -i pt_BR -f ISO-8859-1 14 | 15 | # join splited solr 16 | cat /tmp/solr-8.2.0.tgz.part* > /tmp/solr-8.2.0.tgz 17 | 18 | mv /tmp/solr8sei/* /tmp/ 19 | 20 | useradd solr 21 | 22 | chmod +x /tmp/sei-solr-8.2.0.sh 23 | 24 | # Instalação do Apache Sol2 25 | sh /tmp/sei-solr-8.2.0.sh 26 | 27 | mv /tmp/command.sh / 28 | 29 | yum clean all 30 | rm -rf /var/cache/yum 31 | 32 | # Configuração de permissões de execução no script de inicialização do container 33 | chmod +x /command.sh 34 | 35 | exit 0 36 | -------------------------------------------------------------------------------- /containers/solr/assets/solr8sei/log4j.properties: -------------------------------------------------------------------------------- 1 | # Logging level 2 | solr.log=logs 3 | log4j.rootLogger=WARN, file, CONSOLE 4 | 5 | log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender 6 | 7 | log4j.appender.CONSOLE.layout=org.apache.log4j.EnhancedPatternLayout 8 | log4j.appender.CONSOLE.layout.ConversionPattern=%-4r %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m%n 9 | 10 | #- size rotation with log cleanup. 11 | log4j.appender.file=org.apache.log4j.RollingFileAppender 12 | log4j.appender.file.MaxFileSize=4MB 13 | log4j.appender.file.MaxBackupIndex=9 14 | 15 | #- File to log to and log format 16 | log4j.appender.file.File=${solr.log}/solr.log 17 | log4j.appender.file.layout=org.apache.log4j.EnhancedPatternLayout 18 | log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p (%t) [%X{collection} %X{shard} %X{replica} %X{core}] %c{1.} %m\n 19 | 20 | log4j.logger.org.apache.zookeeper=WARN 21 | log4j.logger.org.apache.hadoop=WARN 22 | 23 | # set to INFO to enable infostream log messages 24 | log4j.logger.org.apache.solr.update.LoggingInfoStream=OFF 25 | -------------------------------------------------------------------------------- /containers/solr/assets/solr8sei/sei-cores-8.2.0/sei-bases-conhecimento/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-bases-conhecimento 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-bases-conhecimento/conteudo -------------------------------------------------------------------------------- /containers/solr/assets/solr8sei/sei-cores-8.2.0/sei-protocolos/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-protocolos 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-protocolos/conteudo -------------------------------------------------------------------------------- /containers/solr/assets/solr8sei/sei-cores-8.2.0/sei-publicacoes/core.properties: -------------------------------------------------------------------------------- 1 | name=sei-publicacoes 2 | config=solrconfig.xml 3 | schema=schema.xml 4 | dataDir=/dados/sei-publicacoes/conteudo -------------------------------------------------------------------------------- /containers/solr/assets/solr8sei/sei-solr-8.2.0.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | for n in /tmp/solr-8.2.0.tgz /tmp/log4j.properties /tmp/solr.service 4 | do 5 | if [ ! -f $n ]; then 6 | echo "Arquivo ["$n"] nao encontrado." 7 | exit 1 8 | fi 9 | done 10 | 11 | if [ ! -d "/tmp/sei-cores-8.2.0" ]; then 12 | echo "Diretorio [/tmp/sei-cores-8.2.0] nao encontrado." 13 | exit 1 14 | fi 15 | 16 | cd /tmp 17 | 18 | tar -xf /tmp/solr-8.2.0.tgz 19 | 20 | cp -Rf /tmp/solr-8.2.0 /opt/solr 21 | 22 | mkdir -v /dados 23 | 24 | ln -vs /dados /opt/solr/server/solr 25 | 26 | cp -Rfv /tmp/log4j.properties /opt/solr/server/resources 27 | 28 | cp -Rf /tmp/sei-cores-8.2.0/* /dados 29 | 30 | mv /opt/solr/example/files/conf/solrconfig.xml /opt/solr/example/files/conf/solrconfig.bak 31 | 32 | cp -R /opt/solr/example/files/conf /dados/sei-protocolos 33 | cp -R /opt/solr/example/files/conf /dados/sei-bases-conhecimento 34 | cp -R /opt/solr/example/files/conf /dados/sei-publicacoes 35 | 36 | rm -Rf /opt/solr/example 37 | 38 | mkdir -v /dados/sei-protocolos/conteudo 39 | mkdir -v /dados/sei-bases-conhecimento/conteudo 40 | mkdir -v /dados/sei-publicacoes/conteudo 41 | 42 | chown -R solr.solr /dados 43 | chown -R solr.solr /opt/solr/ 44 | 45 | cp solr.service /etc/systemd/system/solr.service 46 | 47 | -------------------------------------------------------------------------------- /containers/solr/assets/solr8sei/solr.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | Description=Apache SOLR 3 | After=syslog.target network.target remote-fs.target nss-lookup.target 4 | [Service] 5 | PIDFile=/opt/solr/bin/solr-8983.pid 6 | ExecStart=/opt/solr/bin/solr -p 8983 7 | User=solr 8 | ExecReload=/bin/kill -s HUP $MAINPID 9 | ExecStop=/opt/solr/bin/solr stop -p 8983 10 | PrivateTmp=true 11 | LimitNPROC=65000 12 | LimitNOFILE=65000 13 | 14 | [Install] 15 | WantedBy=multi-user.target 16 | -------------------------------------------------------------------------------- /containers/tests/envcontainers-test.env.modelo: -------------------------------------------------------------------------------- 1 | DOCKER_REGISTRY=processoeletronico 2 | 3 | # nao mude a var abaixo qd for rodar os testes, caso contrario o makefile de conteiner vai tagear o conteiner de teste como latest 4 | # como um dos testes eh enviar as imagens para o seu registry isso geralmente n eh o que se deseja (enviar imagem de teste como latest) 5 | DOCKER_CONTAINER_VERSAO_PRODUTO=test 6 | 7 | IMAGEM_BASE_CENTOS=${DOCKER_REGISTRY}/base-centos7 8 | IMAGEM_BASE_CENTOS_VERSAO=test 9 | 10 | IMAGEM_BASE_ROCKY93=${DOCKER_REGISTRY}/base-rocky93 11 | IMAGEM_BASE_ROCKY93_VERSAO=test 12 | 13 | IMAGEM_BASE_MARIADB=${DOCKER_REGISTRY}/base-mariadb10.5 14 | IMAGEM_BASE_MARIADB_VERSAO=test 15 | 16 | IMAGEM_BASE_MYSQL8=${DOCKER_REGISTRY}/base-mysql8 17 | IMAGEM_BASE_MYSQL8_VERSAO=test 18 | 19 | IMAGEM_BASE_SQLSERVER=${DOCKER_REGISTRY}/base-sqlserver2019 20 | IMAGEM_BASE_SQLSERVER_VERSAO=test 21 | 22 | IMAGEM_BASE_ORACLE=${DOCKER_REGISTRY}/base-oracle11g 23 | IMAGEM_BASE_ORACLE_VERSAO=test 24 | 25 | IMAGEM_BASE_POSTGRES=${DOCKER_REGISTRY}/base-postgres15 26 | IMAGEM_BASE_POSTGRES_VERSAO=test 27 | 28 | IMAGEM_BASE_APP=${DOCKER_REGISTRY}/base-app 29 | IMAGEM_BASE_APP_VERSAO=test 30 | 31 | IMAGEM_BASE_APP_PHP8=${DOCKER_REGISTRY}/base-app-php8 32 | IMAGEM_BASE_APP_PHP8_VERSAO=test 33 | 34 | IMAGEM_BASE_APP_AGENDADOR=${DOCKER_REGISTRY}/app-ci 35 | IMAGEM_BASE_APP_AGENDADOR_VERSAO=test 36 | 37 | IMAGEM_BASE_APP_PHP8_AGENDADOR=${DOCKER_REGISTRY}/app-ci-php8 38 | IMAGEM_BASE_APP_PHP8_AGENDADOR_VERSAO=test 39 | 40 | IMAGEM_BASE_PHPMEMCACHEDADMIN=${DOCKER_REGISTRY}/phpmemcachedadmin-base 41 | IMAGEM_BASE_PHPMEMCACHEDADMIN_VERSAO=test 42 | 43 | IMAGEM_BASE_OPENLDAP=${DOCKER_REGISTRY}/openldap-base 44 | IMAGEM_BASE_OPENLDAP_VERSAO=test 45 | 46 | IMAGEM_BASE_HAPROXY=${DOCKER_REGISTRY}/haproxy-base 47 | IMAGEM_BASE_HAPROXY_VERSAO=test 48 | 49 | IMAGEM_BASE_TRAEFIK=${DOCKER_REGISTRY}/traefik-base 50 | IMAGEM_BASE_TRAEFIK_VERSAO=test -------------------------------------------------------------------------------- /containers/traefik/traefik-base/Dockerfile: -------------------------------------------------------------------------------- 1 | ################################################################################ 2 | # Traefik - apenas redundancia do repo original 3 | ################################################################################ 4 | 5 | FROM traefik:v3.0 -------------------------------------------------------------------------------- /containers/traefik/traefik/Dockerfile: -------------------------------------------------------------------------------- 1 | ARG IMAGEM_BASE=processoeletronico/traefik:latest 2 | 3 | FROM ${IMAGEM_BASE} 4 | 5 | ADD conf.yml /etc/traefik/dynamic_conf/conf.yml -------------------------------------------------------------------------------- /containers/traefik/traefik/conf.yml: -------------------------------------------------------------------------------- 1 | tls: 2 | stores: 3 | default: 4 | defaultCertificate: 5 | certFile: /certs/cert0.pem 6 | keyFile: /certs/cert0.pem -------------------------------------------------------------------------------- /dev/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '2' 2 | services: 3 | jod: 4 | image: ${DOCKER_REGISTRY}/${JOD_IMAGE}:${ENVIRONMENT_VERSION} 5 | container_name: jod 6 | 7 | smtp: 8 | image: ${DOCKER_REGISTRY}/mailcatcher:${ENVIRONMENT_VERSION} 9 | container_name: smtp 10 | ports: 11 | - "1080:1080" 12 | 13 | memcached: 14 | image: ${DOCKER_REGISTRY}/memcached:${ENVIRONMENT_VERSION} 15 | container_name: memcached 16 | ports: 17 | - "11211:11211" 18 | 19 | database: 20 | image: ${DOCKER_REGISTRY}/${DATABASE_IMAGE}:${ENVIRONMENT_VERSION} 21 | container_name: ${DATABASE_HOST} 22 | restart: always 23 | volumes: 24 | - ${DATABASE_HOST}:${DATABASE_DATA_DIR} 25 | ports: 26 | - ${DATABASE_PORT}:${DATABASE_PORT} 27 | 28 | solr: 29 | image: ${DOCKER_REGISTRY}/${SOLR_IMAGE}:${ENVIRONMENT_VERSION} 30 | container_name: solr 31 | ports: 32 | - "8983:8983" 33 | 34 | httpd: 35 | image: ${DOCKER_REGISTRY}/${APP_IMAGE}:${ENVIRONMENT_VERSION} 36 | container_name: httpd 37 | restart: always 38 | ports: 39 | - "8000:8000" 40 | depends_on: 41 | - database 42 | #command: "tail -f /dev/null" 43 | volumes: 44 | - ${SEI_PATH}:/opt/ 45 | environment: 46 | - XDEBUG_CONFIG="idekey=default client_host=${HOST_IP} client_port=9003 discover_client_host=1" 47 | - XDEBUG_SESSION=default 48 | - XDEBUG_MODE=debug 49 | - HOST_URL=http://localhost:8000 50 | - DATABASE_TYPE=${DATABASE_TYPE} 51 | - DATABASE_HOST=${DATABASE_HOST} 52 | - DATABASE_PORT=${DATABASE_PORT} 53 | 54 | - SEI_CHAVE_ACESSO=${SEI_CHAVE_ACESSO} 55 | - SEI_DATABASE_NAME=${SEI_DATABASE_NAME} 56 | - SEI_DATABASE_USER=${SEI_DATABASE_USER} 57 | - SEI_DATABASE_PASSWORD=${SEI_DATABASE_PASSWORD} 58 | - SEI_DATABASE_USER_SCRIPT=${SEI_DATABASE_USER_SCRIPT} 59 | - SEI_DATABASE_PASSWORD_SCRIPT=${SEI_DATABASE_PASSWORD_SCRIPT} 60 | 61 | - SIP_CHAVE_ACESSO=${SIP_CHAVE_ACESSO} 62 | - SIP_DATABASE_NAME=${SIP_DATABASE_NAME} 63 | - SIP_DATABASE_USER=${SIP_DATABASE_USER} 64 | - SIP_DATABASE_PASSWORD=${SIP_DATABASE_PASSWORD} 65 | - SIP_DATABASE_USER_SCRIPT=${SIP_DATABASE_USER_SCRIPT} 66 | - SIP_DATABASE_PASSWORD_SCRIPT=${SIP_DATABASE_PASSWORD_SCRIPT} 67 | links: 68 | - database:${DATABASE_HOST} 69 | - memcached:memcached 70 | - solr:solr 71 | - smtp:smtp 72 | - jod:jod 73 | 74 | 75 | volumes: 76 | mysql: 77 | oracle: 78 | sqlserver: 79 | postgres: -------------------------------------------------------------------------------- /dev/envs/env-mysql-sei4.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=mariadb10.5-sei40 6 | DATABASE_TYPE=MySql 7 | DATABASE_HOST=mysql 8 | DATABASE_PORT=3306 9 | DATABASE_DATA_DIR=/var/lib/mysql 10 | 11 | APP_IMAGE=app-dev 12 | SOLR_IMAGE=solr8.2.0 13 | JOD_IMAGE=jod 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei_user 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei_user 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip_user 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip_user 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/envs/env-mysql-sei5.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=mysql8-sei50 6 | DATABASE_TYPE=MySql 7 | DATABASE_HOST=mysql 8 | DATABASE_PORT=3306 9 | DATABASE_DATA_DIR=/var/lib/mysql 10 | 11 | APP_IMAGE=app-dev-php8 12 | SOLR_IMAGE=solr9.6.1 13 | JOD_IMAGE=jod4.4.8 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei_user 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei_user 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip_user 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip_user 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/envs/env-oracle-sei4.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=oracle11g-sei40 6 | DATABASE_TYPE=Oracle 7 | DATABASE_HOST=oracle 8 | DATABASE_PORT=1521 9 | DATABASE_DATA_DIR=/u01/app/oracle 10 | 11 | APP_IMAGE=app-dev 12 | SOLR_IMAGE=solr8.2.0 13 | JOD_IMAGE=jod 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/envs/env-oracle-sei5.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=oracle11g-sei50 6 | DATABASE_TYPE=Oracle 7 | DATABASE_HOST=oracle 8 | DATABASE_PORT=1521 9 | DATABASE_DATA_DIR=/u01/app/oracle 10 | 11 | APP_IMAGE=app-dev-php8 12 | SOLR_IMAGE=solr9.6.1 13 | JOD_IMAGE=jod4.4.8 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/envs/env-postgres-sei4.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=postgres15-sei40 6 | DATABASE_TYPE=PostgreSql 7 | DATABASE_HOST=postgres 8 | DATABASE_PORT=5432 9 | DATABASE_DATA_DIR=/var/lib/postgresql/data 10 | 11 | APP_IMAGE=app-dev 12 | SOLR_IMAGE=solr8.2.0 13 | JOD_IMAGE=jod 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei_user 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei_user 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip_user 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip_user 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/envs/env-postgres-sei5.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=postgres15-sei50 6 | DATABASE_TYPE=PostgreSql 7 | DATABASE_HOST=postgres 8 | DATABASE_PORT=5432 9 | DATABASE_DATA_DIR=/var/lib/postgresql/data 10 | 11 | APP_IMAGE=app-dev-php8 12 | SOLR_IMAGE=solr9.6.1 13 | JOD_IMAGE=jod4.4.8 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei_user 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=postgres 20 | SEI_DATABASE_PASSWORD_SCRIPT=P@ssword 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip_user 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=postgres 27 | SIP_DATABASE_PASSWORD_SCRIPT=P@ssword -------------------------------------------------------------------------------- /dev/envs/env-sqlserver-sei4.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=sqlserver2019-sei40 6 | DATABASE_TYPE=SqlServer 7 | DATABASE_HOST=sqlserver 8 | DATABASE_PORT=1433 9 | DATABASE_DATA_DIR=/var/opt/mssql/data 10 | 11 | APP_IMAGE=app-dev 12 | SOLR_IMAGE=solr8.2.0 13 | JOD_IMAGE=jod 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei_user 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei_user 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip_user 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip_user 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/envs/env-sqlserver-sei5.env: -------------------------------------------------------------------------------- 1 | ENVIRONMENT_VERSION=3.6.6 2 | 3 | DOCKER_REGISTRY=processoeletronico 4 | 5 | DATABASE_IMAGE=sqlserver2019-sei50 6 | DATABASE_TYPE=SqlServer 7 | DATABASE_HOST=sqlserver 8 | DATABASE_PORT=1433 9 | DATABASE_DATA_DIR=/var/opt/mssql/data 10 | 11 | APP_IMAGE=app-dev-php8 12 | SOLR_IMAGE=solr9.6.1 13 | JOD_IMAGE=jod4.4.8 14 | 15 | SEI_CHAVE_ACESSO=7babf862e12bd48f3101075c399040303d94a493c7ce9306470f719bb453e0428c6135dc 16 | SEI_DATABASE_NAME=sei 17 | SEI_DATABASE_USER=sei_user 18 | SEI_DATABASE_PASSWORD=sei_user 19 | SEI_DATABASE_USER_SCRIPT=sei_user 20 | SEI_DATABASE_PASSWORD_SCRIPT=sei_user 21 | 22 | SIP_CHAVE_ACESSO=d27791b894028d9e7fa34887ad6f0c9a2c559cccda5f64f4e108e3573d5db862b66fb933 23 | SIP_DATABASE_NAME=sip 24 | SIP_DATABASE_USER=sip_user 25 | SIP_DATABASE_PASSWORD=sip_user 26 | SIP_DATABASE_USER_SCRIPT=sip_user 27 | SIP_DATABASE_PASSWORD_SCRIPT=sip_user -------------------------------------------------------------------------------- /dev/tests/Selenium/PythonExported/teste.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/dev/tests/Selenium/PythonExported/teste.pdf -------------------------------------------------------------------------------- /infra/certificado.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDxjCCAq6gAwIBAgICEDAwDQYJKoZIhvcNAQELBQAwczELMAkGA1UEBhMCQlIx 3 | GTAXBgNVBAgMEERpc3RyaXRvIEZlZGVyYWwxETAPBgNVBAcMCEJyYXNpbGlhMQsw 4 | CQYDVQQKDAJNUDEMMAoGA1UECwwDUEVOMRswGQYDVQQDDBJJbnRlcm9wZXJhYmls 5 | aWRhZGUwHhcNMTgwNzAyMTU1MzUzWhcNMjgwNjI5MTU1MzUzWjBcMQswCQYDVQQG 6 | EwJCUjEZMBcGA1UECAwQRGlzdHJpdG8gRmVkZXJhbDEcMBoGA1UECgwTRGVmYXVs 7 | dCBDb21wYW55IEx0ZDEUMBIGA1UEAwwLVFNFLUhPTU9MT0cwggEiMA0GCSqGSIb3 8 | DQEBAQUAA4IBDwAwggEKAoIBAQDz6/VNdq6i5s54T38V1n1xfWUjbyxLKnocuvKU 9 | wJdJIp0qbefD7jqIZ6PquPmPieUAg2XyFS9suiUxZXa8t6H8HNacqmqdGEje91i6 10 | 1Y6WLEOakVfG4kdtDgEnCI02cnJCHNCYa4Her74wxFTTNFUJWSZVc+bdMisUqc55 11 | U/kwKMg2lyfTFwogPKFN9vvlbBN4vnegN9vcvC5jkUqyF6qfDtBjNb4GeQH60YOP 12 | UjZEG7PkQXbt9pO/aw2d/SH1TTx80B3DFybAtZx0wS74mX7Xx/hYqk9OMRLPrj1S 13 | DA3mdKJcHiM1vuCOIqeny9p+3ZOaWPbTJUqNTZgrH0BzgRmzAgMBAAGjezB5MAkG 14 | A1UdEwQCMAAwLAYJYIZIAYb4QgENBB8WHU9wZW5TU0wgR2VuZXJhdGVkIENlcnRp 15 | ZmljYXRlMB0GA1UdDgQWBBTj3cegMaXYVSzH/wat8Zjd5PkIzjAfBgNVHSMEGDAW 16 | gBSY3fjuu9NxOONh+aQeq5OjYC3tuzANBgkqhkiG9w0BAQsFAAOCAQEAKy8QSJK0 17 | dfWEeHu6cVVu0kJj7HfQwT0pi36HA9clWwocdbuddGcGKbW8rRUMC3xwW2vlyQzJ 18 | /DB7JxxJaTVrpnb1XLFS7dxBnctuGuec+ECUjh9T05T+SmUfCr5lpLRttm0bXYfF 19 | I1ec7/tf+PLBLlPLIxo1shXwxOwtxqTqKLE+tVCO6PTccN7VlArSqvyOcX0a5DZA 20 | +HRHuEWd+7TZvIuxGI9Lb1C2nFFKuYTLa738Q6AfqOdeKEVQkZ2/G4qKtbe+Dy/b 21 | +kI+e1NfpI9fBog+haZvcdc+j672aB5hM97t8rxg5EaVKWtHnBETgzZXKAVGXMOw 22 | lk7XwEZMNOEKLA== 23 | -----END CERTIFICATE----- 24 | -----BEGIN PRIVATE KEY----- 25 | MIIEwAIBADANBgkqhkiG9w0BAQEFAASCBKowggSmAgEAAoIBAQDz6/VNdq6i5s54 26 | T38V1n1xfWUjbyxLKnocuvKUwJdJIp0qbefD7jqIZ6PquPmPieUAg2XyFS9suiUx 27 | ZXa8t6H8HNacqmqdGEje91i61Y6WLEOakVfG4kdtDgEnCI02cnJCHNCYa4Her74w 28 | xFTTNFUJWSZVc+bdMisUqc55U/kwKMg2lyfTFwogPKFN9vvlbBN4vnegN9vcvC5j 29 | kUqyF6qfDtBjNb4GeQH60YOPUjZEG7PkQXbt9pO/aw2d/SH1TTx80B3DFybAtZx0 30 | wS74mX7Xx/hYqk9OMRLPrj1SDA3mdKJcHiM1vuCOIqeny9p+3ZOaWPbTJUqNTZgr 31 | H0BzgRmzAgMBAAECggEBAK9ODT3AJ2Dims9y6vZJ8lwncBHYa7AV9i9B2Og5xkEE 32 | xIni9WgmhiDUw8UFbi7QPypwRUuIGE5/Ng3bS0v0elHUdBWikP8Ynf7JLBcTNugN 33 | JgUnojtJE2Z4YzGnfr374MxNI0n4Mh1Wl007PW+Rs/AFB3zw0KJ21OmD5OXkCTqn 34 | HZO/rRL6RQFiTAxgTB6eV6lrXlTrdXALPgLrgADA+13cRWmesM/rYYGBZJTv5aTt 35 | 5tGfm4YicPLeLx7C3fCF4ZSuTI+nhOn9B5xLvlbrgLxmOLevyvWX4DfAMKyXZ35w 36 | x1G5v3KiOsr62s6GPmgkUxB29zsfP8rfrCIyvONQpwkCgYEA+yKD3NOriDqS4ngc 37 | 5UYKRSA2RU8Z7wL1saiapACOrdbnr/N58SIU0LPm6Rr1yybaF5guNADRehm7DNfq 38 | OXIS3MOKP9y/77ivpl2+p3pXBv1mNqMd9ORa5Afp+T4ZhS5llvWWutoEoE7ehT8+ 39 | 5jDEaIzjgQVpjwLYvHAx2kaBx+0CgYEA+KWrk0rR0uSu37Vzg5CUZm7SQciexhs6 40 | FjC33Am0L2fOaFln0HylA9Q/Iqr+CMQ+AidwrfvFYxnu7laLiuVVRDEV5oUnmweO 41 | YThNtb97ZyxVPSsqxzpgxMfzAXdW0/mAbZVXYcTUEMUoMvIIK0eAZBnQDfcMbw/+ 42 | vJOklvSs9B8CgYEAq5NmMa3v6G/UQKO9YisbAyVBztJ/LluATvOZS2kSEdTcj8qx 43 | yjv1qqzumt4Phc8ye6I+FstkUp5XvCub28mC948k2gLQo1AzuV8czcF4yc7AUZ3Z 44 | 7qFBM7/wa5ewydvsDloVs+0V8gxQXQrbx1sUJTX0jQaMmudf+kZQ2QcIzfUCgYEA 45 | 0MmUfBcsf5ElQpZEDCrAYg8WoMSMhj9glDeOe8buNYxOJxND+C5iBggYh8zbiZL3 46 | mqlxlba/NYsWNa4YeKY/5gXtpOcUrbo3lW1I25+RSL5SSQ3RWv+rODHJ3OZP06lD 47 | bUEk4eT8SaS0L6tKrsTYi7WdHczf9PaSadj0MQn9nPMCgYEA10fjYNOi+ak/goMy 48 | oRvWdHeRBtH0FpIKYCz/PkM0OacLt7Tcoevm8YzDIJrLzkwsmz1RWjbsuFJQ2xBa 49 | LpNLHFNIssonxmDUG9gBzCLSndm9H+rlKKELRac4DyQ9mCqbaCfUQnZqbjLArtY5 50 | zF6RdIPtbw5xfchs2GbOKobCZg8= 51 | -----END PRIVATE KEY----- -------------------------------------------------------------------------------- /infra/docs/README.md: -------------------------------------------------------------------------------- 1 | # Documentação Geral do SEI-Docker 2 | 3 | ## Apresentação 4 | 5 | - [Comece aqui com a leitura do README inicial](../README.md) 6 | 7 | ## Instruções Iniciais 8 | 9 | - [Clique aqui](Instrucoes.md) para abrir as instruções iniciais 10 | 11 | ## Vídeo Tutoriais 12 | 13 | - [Clique aqui](VideoTutoriais.md) para abrir a ajuda com os vídeos tutoriais 14 | 15 | --- 16 | 17 | Voltar para [Readme Principal](../README.md) -------------------------------------------------------------------------------- /infra/docs/VideoTutoriais.md: -------------------------------------------------------------------------------- 1 | # Vídeo Tutoriais 2 | 3 | 4 | Os vídeos abaixo foram gravados por nossa equipe para auxiliar no entendimento do ecossistema desse projeto. 5 | 6 | Neles, citamos diversas dicas tanto do projeto em si, mas também de docker, infra e SEI. 7 | Vale a pena gastar o tempo assistindo a todos eles principalmente se você é da área de infra, arquiteto, ou tenha pouco conhecimento no SEI. 8 | 9 | Eles irão abrir a sua mente para um projeto mais amplo na entrada em produção. 10 | 11 | Por favor, leve em consideração que não somos editores profissinais de conteúdo, por essa razão encare os vídeos mais como um bate-papo entre *"técnicos que falam tecnicês"*. 12 | 13 | Assista-os de preferência na ordem disposta abaixo. 14 | 15 | ## Subir Infra Reduzida Rapidamente 16 | 17 | Neste vídeo demonstramos a subida do SEI rapidamente com orientações básicas usando o arquivo default de configuração: 18 | - sobe o sei em localhost com https 19 | - Mostra a interface de estatísticas do balanceador 20 | - outras orientações básicas para rodar o projeto 21 | 22 | [Clique aqui](https://www.youtube.com/watch?v=FwPp9lZiHuM) para abrir o vídeo. 23 | 24 | 25 | ## Subir Infra Completa Rapidamente 26 | 27 | Aqui vamos demonstrar uma subida com todos os componentes disponíveis no projeto até a data de 15/05/2021. 28 | 29 | - Clona o projeto 30 | - Altera arquivo de ambiente com customizações 31 | - Sobe o SEI com: 32 | - https 33 | - domain name de sua preferência 34 | - Nome e Sigla do Orgao de sua preferência 35 | - Descrição e Nome Complemento para o ambiente de sua preferência 36 | - balanceador com interface de estatísticas 37 | - memcached admin 38 | - solr admin 39 | - mailCatcher 40 | - phpldapadmin 41 | - dbadmin 42 | - todos os serviços sendo acessados na mesma url base (Domain Name) pelo balanceador mudando apenas o path ( Ex: https:///meusei.gov.br/haproxy, https:///meusei.gov.br/memcachedadmin, https:///meusei.gov.br/sei, etc) 43 | - muitas dicas e orientações 44 | 45 | [Clique aqui](https://www.youtube.com/watch?v=MpTLtDlSVLw) para abrir o vídeo. 46 | 47 | ## Subir Infra Reduzida Usando SqlServer ou Oracle 48 | 49 | O projeto aceita o uso do Mysql, SqlServer ou Oracle. Aqui demonstramos como subir o ambiente usando SqlServer e Oracle em conteineres. 50 | 51 | [Clique aqui](https://www.youtube.com/watch?v=IgEiR5CZEEs) para abrir o vídeo. 52 | 53 | ## Organização e Estruturação do Projeto 54 | 55 | Aqui falamos de aspectos técnicos diversos do projeto. Tecnologias e organização das informações. 56 | Importante assistir para entender o escopo geral dos ativos bem como a anatomia da solução entregue. 57 | 58 | [Clique aqui](https://www.youtube.com/watch?v=rczbANlWVRY) para abrir o vídeo. 59 | 60 | ## Subir Infra Reduzida com Algumas Customizações 61 | 62 | Aqui é uma subida mais demorada pois explicamos características pertinentes aos ambientes. 63 | - localhost com https 64 | - como mudar o nome do ambiente de localhost para outro Domain Name sem perder os dados cadastrados 65 | - Solr - administrar, forçar perda e recriar/reindexar 66 | - Scale da aplicação 67 | - outros 68 | 69 | [Clique aqui](https://www.youtube.com/watch?v=HjZfryu0sco) para abrir o vídeo. 70 | 71 | ## Subir Infra Completa com Customizações 72 | 73 | Complementando o vídeo anterior, vamos agora incrementar os componentes abrangendo todos eles. 74 | 75 | Passamos pela explicação técnica dos mesmos e vamos além explicando novos pontos e situações como: desativar o OpenLdap e voltar a config antiga automaticamente; como cadastrar usuários na árvore do Ldap; como destruir todo o ambiente e outros assuntos diversos importantes 76 | 77 | [Clique aqui](https://www.youtube.com/watch?v=m5wXBPDMVQQ) para abrir o vídeo. 78 | 79 | 80 | --- 81 | 82 | Voltar para [Readme Principal](../README.md) 83 | 84 | Voltar para [Readme Instruções](README.md) -------------------------------------------------------------------------------- /infra/envlocal-example-mysql-sei5.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/mysql8-sei50:latest 5 | export DOCKER_IMAGE_SOLR=${DOCKER_REGISTRY}/solr9.6.1:latest 6 | export DOCKER_IMAGE_APP=${DOCKER_REGISTRY}/app-ci-php8:latest 7 | export DOCKER_IMAGE_APP_AGENDADOR=${DOCKER_REGISTRY}/app-ci-php8-agendador:latest 8 | export DOCKER_IMAGE_JOD=${DOCKER_REGISTRY}/jod4.4.8:latest 9 | -------------------------------------------------------------------------------- /infra/envlocal-example-oracle-sei4.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DB_DATA_DIRECTORY=/u01/app/oracle 5 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/oracle11g-sei40:latest 6 | export APP_ORGAO_DESCRICAO=Orgao Processo Eletronico - Oracle 7 | export APP_DB_TIPO=Oracle 8 | export APP_DB_PORTA=1521 9 | export APP_DB_SIP_USERNAME=sip 10 | export APP_DB_SEI_USERNAME=sei 11 | export APP_DB_ROOT_USERNAME=sip 12 | export APP_DB_ROOT_PASSWORD=sip_user -------------------------------------------------------------------------------- /infra/envlocal-example-oracle-sei5.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DOCKER_IMAGE_SOLR=${DOCKER_REGISTRY}/solr9.6.1:latest 5 | export DOCKER_IMAGE_APP=${DOCKER_REGISTRY}/app-ci-php8:latest 6 | export DOCKER_IMAGE_APP_AGENDADOR=${DOCKER_REGISTRY}/app-ci-php8-agendador:latest 7 | export DB_DATA_DIRECTORY=/u01/app/oracle 8 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/oracle11g-sei50:latest 9 | export DOCKER_IMAGE_JOD=${DOCKER_REGISTRY}/jod4.4.8:latest 10 | export APP_ORGAO_DESCRICAO=Orgao Processo Eletronico - Oracle 11 | export APP_DB_TIPO=Oracle 12 | export APP_DB_PORTA=1521 13 | export APP_DB_SIP_USERNAME=sip 14 | export APP_DB_SEI_USERNAME=sei 15 | export APP_DB_ROOT_USERNAME=sip 16 | export APP_DB_ROOT_PASSWORD=sip_user 17 | -------------------------------------------------------------------------------- /infra/envlocal-example-postgres-sei4.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DB_DATA_DIRECTORY=/var/lib/postgresql/data 5 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/postgres15-sei40:latest 6 | export APP_ORGAO_DESCRICAO=Orgao Processo Eletronico - Postgres 7 | export APP_DB_TIPO=PostgreSql 8 | export APP_DB_PORTA=5432 9 | export APP_DB_ROOT_USERNAME=postgres 10 | export APP_DB_ROOT_PASSWORD=P@ssword -------------------------------------------------------------------------------- /infra/envlocal-example-postgres-sei5.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DOCKER_IMAGE_SOLR=${DOCKER_REGISTRY}/solr9.6.1:latest 5 | export DOCKER_IMAGE_APP=${DOCKER_REGISTRY}/app-ci-php8:latest 6 | export DOCKER_IMAGE_APP_AGENDADOR=${DOCKER_REGISTRY}/app-ci-php8-agendador:latest 7 | export DB_DATA_DIRECTORY=/var/lib/postgresql/data 8 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/postgres15-sei50:latest 9 | export DOCKER_IMAGE_JOD=${DOCKER_REGISTRY}/jod4.4.8:latest 10 | export APP_ORGAO_DESCRICAO=Orgao Processo Eletronico - Postgres 11 | export APP_DB_TIPO=PostgreSql 12 | export APP_DB_PORTA=5432 13 | export APP_DB_ROOT_USERNAME=postgres 14 | export APP_DB_ROOT_PASSWORD=P@ssword 15 | -------------------------------------------------------------------------------- /infra/envlocal-example-sqlserver-sei4.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DB_DATA_DIRECTORY=/var/opt/mssql/data 5 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/sqlserver2019-sei40:latest 6 | export APP_ORGAO_DESCRICAO=Orgao Processo Eletronico - SqlServer 7 | export APP_DB_TIPO=SqlServer 8 | export APP_DB_PORTA=1433 9 | export APP_DB_ROOT_USERNAME=sa 10 | export APP_DB_ROOT_PASSWORD=yourStrong(!)Password -------------------------------------------------------------------------------- /infra/envlocal-example-sqlserver-sei5.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | 4 | export DOCKER_IMAGE_SOLR=${DOCKER_REGISTRY}/solr9.6.1:latest 5 | export DOCKER_IMAGE_APP=${DOCKER_REGISTRY}/app-ci-php8:latest 6 | export DOCKER_IMAGE_APP_AGENDADOR=${DOCKER_REGISTRY}/app-ci-php8-agendador:latest 7 | export DB_DATA_DIRECTORY=/var/opt/mssql/data 8 | export DOCKER_IMAGE_BD=${DOCKER_REGISTRY}/sqlserver2019-sei50:latest 9 | export DOCKER_IMAGE_JOD=${DOCKER_REGISTRY}/jod4.4.8:latest 10 | export APP_ORGAO_DESCRICAO=Orgao Processo Eletronico - SqlServer 11 | export APP_DB_TIPO=SqlServer 12 | export APP_DB_PORTA=1433 13 | export APP_DB_ROOT_USERNAME=sa 14 | export APP_DB_ROOT_PASSWORD=yourStrong(!)Password 15 | -------------------------------------------------------------------------------- /infra/generatebase64.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | export APP_DB_PORTA_BASE64=$(echo -n "$APP_DB_PORTA" | base64 | tr -d \\n) 4 | export APP_DB_ROOT_PASSWORD_BASE64=$(echo -n "$APP_DB_ROOT_PASSWORD" | base64 | tr -d \\n) 5 | export APP_DB_ROOT_USERNAME_BASE64=$(echo -n "$APP_DB_ROOT_USERNAME" | base64 | tr -d \\n) 6 | export APP_DB_SEI_BASE_BASE64=$(echo -n "$APP_DB_SEI_BASE" | base64 | tr -d \\n) 7 | export APP_DB_SEI_PASSWORD_BASE64=$(echo -n "$APP_DB_SEI_PASSWORD" | base64 | tr -d \\n) 8 | export APP_DB_SEI_USERNAME_BASE64=$(echo -n "$APP_DB_SEI_USERNAME" | base64 | tr -d \\n) 9 | export APP_DB_SIP_BASE_BASE64=$(echo -n "$APP_DB_SIP_BASE" | base64 | tr -d \\n) 10 | export APP_DB_SIP_PASSWORD_BASE64=$(echo -n "$APP_DB_SIP_PASSWORD" | base64 | tr -d \\n) 11 | export APP_DB_SIP_USERNAME_BASE64=$(echo -n "$APP_DB_SIP_USERNAME" | base64 | tr -d \\n) 12 | export APP_MAIL_AUTENTICAR_BASE64=$(echo -n "$APP_MAIL_AUTENTICAR" | base64 | tr -d \\n) 13 | export APP_MAIL_PORTA_BASE64=$(echo -n "$APP_MAIL_PORTA" | base64 | tr -d \\n) 14 | export APP_MAIL_SEGURANCA_BASE64=$(echo -n "$APP_MAIL_SEGURANCA" | base64 | tr -d \\n) 15 | export APP_MAIL_SENHA_BASE64=$(echo -n "$APP_MAIL_SENHA" | base64 | tr -d \\n) 16 | export APP_MAIL_USUARIO_BASE64=$(echo -n "$APP_MAIL_USUARIO" | base64 | tr -d \\n) 17 | export APP_SEI_CHAVE_ACESSO_BASE64=$(echo -n "$APP_SEI_CHAVE_ACESSO" | base64 | tr -d \\n) 18 | export APP_SIP_CHAVE_ACESSO_BASE64=$(echo -n "$APP_SIP_CHAVE_ACESSO" | base64 | tr -d \\n) 19 | export MODULO_ASSINATURAVANCADA_VALIDAR_API_KEY_BASE64=$(echo -n "$MODULO_ASSINATURAVANCADA_VALIDAR_API_KEY" | base64 | tr -d \\n) 20 | export APP_FONTES_GIT_PRIVKEY_BASE64=$(echo -n "$APP_FONTES_GIT_PRIVKEY_BASE64" | base64 | tr -d \\n) 21 | export GITUSER_REPO_MODULOS_BASE64=$(echo -n "$GITUSER_REPO_MODULOS" | base64 | tr -d \\n) 22 | export GITPASS_REPO_MODULOS_BASE64=$(echo -n "$GITPASS_REPO_MODULOS" | base64 | tr -d \\n) 23 | 24 | envsubst < orquestrators/rancher-kubernetes/templates/secrets-template.yaml > orquestrators/rancher-kubernetes/topublish/secrets.yaml -------------------------------------------------------------------------------- /infra/jenkins/comminganytime.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/infra/jenkins/comminganytime.txt -------------------------------------------------------------------------------- /infra/orquestrators/rancher-cattle/comminganytime.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/infra/orquestrators/rancher-cattle/comminganytime.txt -------------------------------------------------------------------------------- /infra/orquestrators/rancher-kubernetes/templates/ingress-template.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: networking.k8s.io/v1 2 | kind: Ingress 3 | metadata: 4 | annotations: 5 | cert-manager.io/cluster-issuer: letsencrypt-dth 6 | ingress.kubernetes.io/app-root: /sei/ 7 | ingress.kubernetes.io/backend-protocol: HTTPS 8 | ingress.kubernetes.io/proxy-body-size: 200m 9 | kubernetes.io/ingress.class: nginx 10 | kubernetes.io/tls-acme: "true" 11 | nginx.ingress.kubernetes.io/affinity: cookie 12 | nginx.ingress.kubernetes.io/app-root: /sei/ 13 | nginx.ingress.kubernetes.io/backend-protocol: HTTPS 14 | nginx.ingress.kubernetes.io/session-cookie-name: PIINGRESSAFFINITY 15 | nginx.ingress.kubernetes.io/proxy-body-size: 200m 16 | name: ing-sei 17 | namespace: ${KUBERNETES_NAMESPACE} 18 | spec: 19 | rules: 20 | - host: ${APP_HOST} 21 | http: 22 | paths: 23 | - backend: 24 | service: 25 | name: sei-app 26 | port: 27 | number: 443 28 | path: / 29 | pathType: Prefix 30 | tls: 31 | - hosts: 32 | - ${APP_HOST} 33 | #secretName: tls-sei1 34 | -------------------------------------------------------------------------------- /infra/orquestrators/rancher-kubernetes/templates/jobs-template.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: batch/v1 2 | kind: Job 3 | metadata: 4 | name: sei-inicializador 5 | namespace: ${KUBERNETES_NAMESPACE} 6 | spec: 7 | backoffLimit: 2 8 | completions: 1 9 | parallelism: 1 10 | template: 11 | metadata: 12 | labels: 13 | job-name: sei-inicializador 14 | spec: 15 | containers: 16 | - command: 17 | - /entrypoint-atualizador.sh 18 | envFrom: 19 | - configMapRef: 20 | name: sei-app 21 | - secretRef: 22 | name: sei-secret1 23 | image: ${DOCKER_IMAGE_APP} 24 | imagePullPolicy: Always 25 | name: sei-inicializador 26 | #resources: #kb_resources 27 | # limits: #kb_resources 28 | # cpu: ${KUBERNETES_LIMITS_CPU_APP} #kb_resources 29 | # memory: ${KUBERNETES_LIMITS_MEMORY_APP} #kb_resources 30 | # requests: #kb_resources 31 | # cpu: ${KUBERNETES_REQUEST_CPU_APP} #kb_resources 32 | # memory: ${KUBERNETES_REQUEST_MEMORY_APP} #kb_resources 33 | stdin: true 34 | terminationMessagePath: /dev/termination-log 35 | terminationMessagePolicy: File 36 | tty: true 37 | volumeMounts: 38 | - mountPath: /opt 39 | name: vol1 40 | - mountPath: /sei/arquivos_externos_sei/ 41 | name: vol2 42 | - mountPath: /sei/controlador-instalacoes 43 | name: vol3 44 | dnsPolicy: ClusterFirst 45 | restartPolicy: Never 46 | terminationGracePeriodSeconds: 30 47 | volumes: 48 | - name: vol1 49 | persistentVolumeClaim: 50 | claimName: vol-sei-fontes 51 | - name: vol2 52 | persistentVolumeClaim: 53 | claimName: vol-sei-arquivosexternos 54 | - name: vol3 55 | persistentVolumeClaim: 56 | claimName: vol-sei-controladorinstalacao 57 | 58 | 59 | -------------------------------------------------------------------------------- /infra/orquestrators/rancher-kubernetes/templates/pvc-template.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | kind: PersistentVolumeClaim 3 | metadata: 4 | name: vol-sei-arquivosexternos 5 | namespace: ${KUBERNETES_NAMESPACE} 6 | spec: 7 | accessModes: 8 | - ReadWriteOnce 9 | - ReadWriteMany 10 | resources: 11 | requests: 12 | storage: 20Gi 13 | storageClassName: ${KUBERNETES_PVC_STORAGECLASS} 14 | 15 | --- 16 | 17 | apiVersion: v1 18 | kind: PersistentVolumeClaim 19 | metadata: 20 | name: vol-sei-controladorinstalacao 21 | namespace: ${KUBERNETES_NAMESPACE} 22 | spec: 23 | accessModes: 24 | - ReadWriteOnce 25 | - ReadWriteMany 26 | resources: 27 | requests: 28 | storage: 1Gi 29 | storageClassName: ${KUBERNETES_PVC_STORAGECLASS} 30 | 31 | --- 32 | 33 | apiVersion: v1 34 | kind: PersistentVolumeClaim 35 | metadata: 36 | name: vol-sei-db 37 | namespace: ${KUBERNETES_NAMESPACE} 38 | spec: 39 | accessModes: 40 | - ReadWriteOnce 41 | - ReadWriteMany 42 | resources: 43 | requests: 44 | storage: 50Gi 45 | storageClassName: ${KUBERNETES_PVC_STORAGECLASS} 46 | 47 | --- 48 | 49 | apiVersion: v1 50 | kind: PersistentVolumeClaim 51 | metadata: 52 | name: vol-sei-fontes 53 | namespace: ${KUBERNETES_NAMESPACE} 54 | spec: 55 | accessModes: 56 | - ReadWriteOnce 57 | - ReadWriteMany 58 | resources: 59 | requests: 60 | storage: 1Gi 61 | storageClassName: ${KUBERNETES_PVC_STORAGECLASS} 62 | 63 | --- 64 | 65 | apiVersion: v1 66 | kind: PersistentVolumeClaim 67 | metadata: 68 | name: vol-sei-solr 69 | namespace: ${KUBERNETES_NAMESPACE} 70 | spec: 71 | accessModes: 72 | - ReadWriteOnce 73 | - ReadWriteMany 74 | resources: 75 | requests: 76 | storage: 50Gi 77 | storageClassName: ${KUBERNETES_PVC_STORAGECLASS} 78 | -------------------------------------------------------------------------------- /infra/orquestrators/rancher-kubernetes/templates/secrets-template.yaml: -------------------------------------------------------------------------------- 1 | apiVersion: v1 2 | data: 3 | APP_DB_PORTA: ${APP_DB_PORTA_BASE64} 4 | APP_DB_ROOT_PASSWORD: ${APP_DB_ROOT_PASSWORD_BASE64} 5 | APP_DB_ROOT_USERNAME: ${APP_DB_ROOT_USERNAME_BASE64} 6 | APP_DB_SEI_BASE: ${APP_DB_SEI_BASE_BASE64} 7 | APP_DB_SEI_PASSWORD: ${APP_DB_SEI_PASSWORD_BASE64} 8 | APP_DB_SEI_USERNAME: ${APP_DB_SEI_USERNAME_BASE64} 9 | APP_DB_SIP_BASE: ${APP_DB_SIP_BASE_BASE64} 10 | APP_DB_SIP_PASSWORD: ${APP_DB_SIP_PASSWORD_BASE64} 11 | APP_DB_SIP_USERNAME: ${APP_DB_SIP_USERNAME_BASE64} 12 | APP_MAIL_AUTENTICAR: "${APP_MAIL_AUTENTICAR_BASE64}" 13 | APP_MAIL_PORTA: ${APP_MAIL_PORTA_BASE64} 14 | APP_MAIL_SEGURANCA: "${APP_MAIL_SEGURANCA_BASE64}" 15 | APP_MAIL_SENHA: "${APP_MAIL_SENHA_BASE64}" 16 | APP_MAIL_USUARIO: "${APP_MAIL_USUARIO_BASE64}" 17 | APP_SEI_CHAVE_ACESSO: ${APP_SEI_CHAVE_ACESSO_BASE64} 18 | APP_SIP_CHAVE_ACESSO: ${APP_SIP_CHAVE_ACESSO_BASE64} 19 | MODULO_ASSINATURAVANCADA_VALIDAR_API_KEY: ${MODULO_ASSINATURAVANCADA_VALIDAR_API_KEY_BASE64} 20 | APP_FONTES_GIT_PRIVKEY_BASE64: ${APP_FONTES_GIT_PRIVKEY_BASE64} 21 | GITUSER_REPO_MODULOS: ${GITUSER_REPO_MODULOS_BASE64} 22 | GITPASS_REPO_MODULOS: ${GITPASS_REPO_MODULOS_BASE64} 23 | kind: Secret 24 | metadata: 25 | name: sei-secret1 26 | namespace: ${KUBERNETES_NAMESPACE} 27 | type: Opaque -------------------------------------------------------------------------------- /infra/orquestrators/rancher-kubernetes/topublish/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/infra/orquestrators/rancher-kubernetes/topublish/.gitkeep -------------------------------------------------------------------------------- /infra/tests/README.md: -------------------------------------------------------------------------------- 1 | # Testes do Projeto 2 | 3 | Testes para o desenvolvedor desse projeto validar inicialmente se as suas alterações quebraram algo que já estava implementado anteriormente. 4 | 5 | Esses testes foram elaborados para simular diferentes configurações no arquivo envlocal.env. 6 | O teste sobe o projeto e roda validações na instância que está no ar para verificar se está tudo ok. 7 | 8 | ## Sabores das Instâncias Verificadas 9 | As instâncias são variadas alterando-se o arquivo envlocal.env 10 | 11 | - Instalação reduzida 12 | - sem balanceador 13 | - app sobe na url https://meusei.orgao.gov.br 14 | - memcached, solr e jod 15 | 16 | - Instalacao default 17 | - balanceador 18 | - app sobem em localhost 19 | - memcached, solr e jod 20 | 21 | - Instalação completa 22 | - balanceador 23 | - app sobe na url https://meusei2.orgao.gov.br 24 | - memcached, solr, jod, dbadminer, phpmemcached, openldap, phpmemcachedadmin 25 | 26 | 27 | ## Itens Verificados 28 | 29 | Seguem alguns itens que o teste verifica para cada instalação: 30 | - verificação de volumes se estao presentes ou ausentes 31 | - sobe o projeto do zero obedecendo 32 | - verifica se a url esta respondendo 33 | - verificar se o balanceador esta respondendo em seus backends 34 | - verificar se os componentes estao presentes 35 | - escalona a aplicacao e verifica componentes e balanceador 36 | - roda um teste em Selenium para logar e criar processo com doc interno e externo 37 | 38 | ## Instâncias Testadas 39 | 40 | O teste completo, roda na sequência as seguintes instâncias e testa cada uma delas: 41 | - instalação reduzida - mysql 42 | - instalação reduzida - sqlserver 43 | - instalação reduzida - oracle 44 | - instalacao default - mysql 45 | - instalacao default - sqlserver 46 | - instalacao default - oracle 47 | - instalacao completa - mysql 48 | - instalacao completa - sqlserver 49 | - instalacao completa - oracle 50 | - instalação reduzida apenas http - mysql 51 | - instalação reduzida apenas http - sqlserver 52 | - instalação reduzida apenas http - oracle 53 | - instalacao default apenas http - mysql 54 | 55 | ## Como Rodar 56 | 57 | Basta seguir para a pasta tests. 58 | 59 | ``` 60 | cd tests 61 | make help 62 | ``` 63 | informa os comandos disponíveis para o teste. Caso deseje testar apenas partes da aplicação. 64 | 65 | Um teste completo basta rodar: 66 | ``` 67 | make test_lineup_completa 68 | ``` 69 | 70 | O comando acima desencadeia o processo de teste completo criando e testando cada instância/sabor. 71 | 72 | --- 73 | 74 | Caso deseje rodar os teste em apenas uma instância, pode rodar da seguinte forma: 75 | ``` 76 | make MODALIDADE=completa BANCO=oracle test_ambiente 77 | ``` 78 | 79 | O comando acima vai rodar os testes apenas em um ambiente, na modalidade completa e no oracle 80 | 81 | outro exemplo: 82 | 83 | ``` 84 | make MODALIDADE=default BANCO=mysql test_ambiente 85 | ``` 86 | 87 | Nesse caso acima, vai rodar os testes apenas na instalação default no mysql 88 | 89 | -------------------------------------------------------------------------------- /infra/tests/Selenium/PythonExported/teste.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/pengovbr/sei-docker/c7828fbed1229a7822e7a5a4813c25b9fb0792cf/infra/tests/Selenium/PythonExported/teste.pdf -------------------------------------------------------------------------------- /infra/tests/test-envlocal-completa.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | # depois o envlocal-example-<>.env 4 | 5 | export DBADMIN_PRESENTE=true 6 | export MEMCACHEDADMIN_PRESENTE=true 7 | export MAIL_CATCHER_PRESENTE=true 8 | export OPENLDAP_PRESENTE=true 9 | export APP_HOST=meusei2.orgao.gov.br -------------------------------------------------------------------------------- /infra/tests/test-envlocal-default-http.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | # depois o envlocal-example-<>.env 4 | 5 | export APP_PROTOCOLO=http 6 | -------------------------------------------------------------------------------- /infra/tests/test-envlocal-reduzida-http.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | # depois o envlocal-example-<>.env 4 | 5 | export BALANCEADOR_PRESENTE=false 6 | export JOD_PRESENTE=false 7 | export APP_PORTA_80_MAP_EXPOR=true 8 | export APP_PORTA_443_MAP_EXPOR=true 9 | export APP_PROTOCOLO=http 10 | export APP_HOST=meusei.orgao.gov.br -------------------------------------------------------------------------------- /infra/tests/test-envlocal-reduzida.env: -------------------------------------------------------------------------------- 1 | # aqui apenas a diferenca para a nova base 2 | # cole antes aqui o envlocal-example-mysql-sei4.env 3 | # depois o envlocal-example-<>.env 4 | 5 | export BALANCEADOR_PRESENTE=false 6 | export JOD_PRESENTE=false 7 | export APP_PORTA_80_MAP_EXPOR=true 8 | export APP_PORTA_443_MAP_EXPOR=true 9 | export APP_HOST=meusei.orgao.gov.br 10 | --------------------------------------------------------------------------------