Instalação atualizada i-educar 2.3.5 no Ubuntu 18.4

Fiz esse tutorial da forma mais simples que consegui, para iniciantes como eu fazer a instalação em servidor local do i-educar 2.3.5, de forma fácil e sem erros no Ubuntu 18.4.

VAMOS LÁ:

1 - Crie um usuario em seu Ubuntu com o nome: ‘‘ieducar’’ e com a senha ‘‘ieducar’’

$ sudo adduser ieducar

2 - coloque o usuario ‘‘ieducar’’ no grupo sudo:

$ sudo adduser ieducar sudo

  • saia do usuario atual

3 - Logue no Ubuntu com o usuario ‘‘ieducar’’

4 - atualize:

$ sudo apt-get update
$ sudo apt-get upgrade 

5 - instalale o php 7.3

$ sudo add-apt-repository ppa:ondrej/php
$ sudo apt-get update
$ sudo apt-get install php7.3-fpm

6 - Instalar o nginx

$ sudo apt install nginx

7 - Instalar Postgresql 9.5

$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
$ sudo apt-get update
$sudo apt-get install postgresql-9.5

8 - baixe o release do i-Educar descompacte e o mova para que o nginx o leia:

 $ wget https://github.com/portabilis/i-educar/releases/download/2.3.5/ieducar-2.3.5.tar.gz
 $ sudo tar -zxf ieducar-2.3.5.tar.gz -C /var/www/
 $ sudo mv /var/www/ieducar-2.3.5/ /var/www/ieducar

OBS: Neste ponto ja é possivel acessar o ip do server pelo navegador e ver a mensagem '‘WELCOME TO NGINX’"

9 - Crie o arquivo de configuração do nginx:

$ sudo nano /etc/nginx/sites-available/ieducar

10 - cole o codigo abaixo nele, salve e saia:

server {
    index index.php index.html;
    server_name _;
    error_log  /var/log/nginx/error.log;
    access_log /var/log/nginx/access.log;
    root /var/www/ieducar/public;

    location ~ ^/intranet/?$ {
        rewrite ^.*$ /intranet/index.php redirect;
    }

    location ~ /module/(.*)/(styles|scripts|imagens)/(.*) {
        rewrite ^/module/(.*)/(imagens|scripts|styles)/(.*)$ /intranet/$2/$3 break;
    }

    location ~ /module/(.*)/(.*) {
        rewrite ^/module/(.*/)(.*intranet/.*)$ /$2 redirect;
        rewrite ^/module/(.*/)(.*index\.php)$ /$2 redirect;
        rewrite ^/module/(.*/)(.*logof\.php)$ /intranet/logof.php redirect;
        rewrite ^/module/(.*/)(.*meusdados\.php)$ /intranet/meusdados.php redirect;
        rewrite ^/module/(.*/)(.*_xml.*)(\.php)$ /intranet/$2.php redirect;
        rewrite ^/module/(.*/)(.*erro_banco\.php)$ /intranet/erro_banco.php redirect;
        rewrite ^/module/(.*/)(.*educar_pesquisa_cliente_lst\.php)$ /intranet/educar_pesquisa_cliente_lst.php redirect;
        rewrite ^/module/(.*/)(.*educar_pesquisa_obra_lst\.php)$ /intranet/educar_pesquisa_obra_lst.php redirect;
        rewrite ^/module/(.*)$ /module/index.php last;
    }

    location ~ ^(/intranet.*\.php|/modules.*\.php|/module/) {
        try_files /index.php =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.3-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }

    location ~ \.php {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/run/php/php7.3-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }
}

10 - Agora remova o site padrão do nginx e habilite o i-Educar:

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo ln -s /etc/nginx/sites-available/ieducar /etc/nginx/sites-enabled/ieducar
$ sudo service nginx restart

11 - Vamos criar um banco de dados para o i-Educar. e um novo usuário (role) Exatamente com o mesmo login que uso no sistema: ieducar

$ sudo -u postgres createuser -P -s -e ieducar

12 - Agora vamos criar o banco de DADOS:

$ createdb

Obs. Já devemos ser capazes de acessar o nosso instalador pelo browser:

http://endereco.de.ip/install.php

Obs. O instalador vai identificar os problemas que impede de prosseguir a instalação.

13 - Instale as extensões do PHP que ainda não foram instaladas:

$sudo apt install php7.3-fpm php7.3-common php7.3-zip php7.3-pgsql php7.3-curl php7.3-xml php7.3-xmlrpc php7.3-json php7.3-pdo php7.3-gd php7.3-imagick php7.3-ldap php7.3-imap php7.3-mbstring php7.3-intl php7.3-cli php7.3-recode php7.3-tidy php7.3-bcmath php7.3-opcache

14 - Reinicie o PHP

$ sudo service php7.3-fpm restart

15 - Por fim vamos dar permissão de escrita ao servidor em algumas pastas e arquivos específicos. Novamente podemos usar exatamente a sugestão de comando que o instalador nos fornece:

$ sudo chown -R www-data:www-data /var/www/ieducar

16 - atualize o navegador e prossiga com a instalação.

Parabens você instalou a versão mais atual do i-educar se você chegou até aqui.

5 Curtidas

Parabéns! <3

Funcionou liso demais! Sem nenhum erro!

No entanto, a senha informada no site (meuip/install.php) não funciona quando tentamos conectar no sistema.

Eu até achei que tivesse informado errado e reinstalei tudo, e continuou não funcionando.

Editado novamente: Minha senha tinha um caracter especial, e pelo que entendi ele não considerou a partir do dito caracter. Eu descobri isso ao tentar trocar a senha pelo comando “php artisan admin:password senha&numero” ele deu erro, mas acabou atualizando para “senha” e desconsiderando o “&” e o “numero”.

Bom, muito obrigado pelo tutorial! Se você puder adicionar o do modulo relatórios e o i-diario, seria sucesso. Eu tinha conseguido instalar o i-educar, mas esses dois últimos, só tenho erros e erros. haha

Como eu disse ainda sou iniciante tanto em linux como no i-educar, o i-diario eu nem consegui instalar ainda, não entendo o motivo mas ele trabalha com uma linguagem diferente do i-educar.
Quanto ao modulo de relatorios do i-educar vou estudar ele e instalar também.
Se eu tiver sucesso posto aqui. Obrigado amigo pelos parabéns, é bom contribuir.

Atualizando minha resposta: Não é preciso instalar o modulo relatórios na versão 2.3.5.

Parabéns pela contribuição @rjunior, a comunidade agradece!

Obrigado @edersoares, contriuir torna a comunidade melhor e mais forte.

Oi obrigado pela contribuição, esta é a última versão estável?

Você pode acompanhar os lançamentos por aqui: https://github.com/portabilis/i-educar/releases

1 Curtida

Gostaria só de adicionar um complemento ao tutorial:

Para que os relatórios funcionem, é necessário instalar o Openjdk 8. Tem muitos tutoriais na internet e é de fácil instalação.

Precisa instalar o composer?

Quais seriam as principais modificações para que esse tutorial funcionasse, por exemplo, em uma vps com ubuntu 18.04? Fiz a instalação em servidor local é totalmente funcional.

Oi @araujo.

Processo exatamente igual.

@tiago.camargo tiago.camargo obrigado por a resposta, segui o passo a passo e instalei com êxito em uma vps
sem grandes problemas, mas estou me deparando com outros erros 500 ao estudar algumas funcionalidades, a exemplo de demonstração segue print, a versão instalada é a 2.4.2 em um vps ubuntu 18.04 lts

Dá uma olhada no log, que fica em storage/logs/.

log imenso, mas ai esta uma pequena parte dele

[2020-12-20 17:55:39] production.ERROR: Invalid argument supplied for foreach() (View: /var/www/ieducar/resources/views/registration/update-registration-status/index.blade.php) {“userId”:1,“exception”:"[object] (ErrorException(code: 0): Invalid argument supplied for foreach() (View: /var/www/ieducar/resources/views/registration/update-registration-status/index.blade.php) at /var/www/ieducar/ieducar/lib/App/Model/IedFinder.php:281, ErrorException(code: 0): Invalid argument supplied for foreach() at /var/www/ieducar/ieducar/lib/App/Model/IedFinder.php:281)
[stacktrace]
#0 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php(45): Illuminate\View\Engines\CompilerEngine->handleViewException(Object(ErrorException), 1)
#1 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php(59): Illuminate\View\Engines\PhpEngine->evaluatePath(’/var/www/ieduca…’, Array)
#2 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/View/View.php(142): Illuminate\View\Engines\CompilerEngine->get(’/var/www/ieduca…’, Array)
#3 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/View/View.php(125): Illuminate\View\View->getContents()
#4 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/View/View.php(90): Illuminate\View\View->renderContents()
#5 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Http/Response.php(42): Illuminate\View\View->render()
#6 /var/www/ieducar/vendor/symfony/http-foundation/Response.php(205): Illuminate\Http\Response->setContent(Object(Illuminate\View\View))
#7 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Router.php(748): Symfony\Component\HttpFoundation\Response->__construct(Object(Illuminate\View\View))
#8 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Router.php(720): Illuminate\Routing\Router::toResponse(Object(Illuminate\Http\Request), Object(Illuminate\View\View))
#9 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Router.php(680): Illuminate\Routing\Router->prepareResponse(Object(Illuminate\Http\Request), Object(Illuminate\View\View))
#10 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(30): Illuminate\Routing\Router->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#11 /var/www/ieducar/app/Http/Middleware/CheckResetPassword.php(31): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#12 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(163): App\Http\Middleware\CheckResetPassword->handle(Object(Illuminate\Http\Request), Object(Closure))
#13 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#14 /var/www/ieducar/app/Http/Middleware/Suspended.php(27): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#15 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(163): App\Http\Middleware\Suspended->handle(Object(Illuminate\Http\Request), Object(Closure))
#16 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#17 /var/www/ieducar/app/Http/Middleware/XssByPass.php(18): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#18 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(163): App\Http\Middleware\XssByPass->handle(Object(Illuminate\Http\Request), Object(Closure))
#19 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Routing/Pipeline.php(53): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#20 /var/www/ieducar/app/Http/Middleware/Footer.php(24): Illuminate\Routing\Pipeline->Illuminate\Routing\{closure}(Object(Illuminate\Http\Request))
#21 /var/www/ieducar/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(163): App\Http\Middleware\Footer->handle(Object(Illuminate\Http\Request), Object(Closure))

Testei o i-Educar 2.4.2 no Ubuntu 18.04.5 versão desktop e funcionou normalmente!

1 Curtida