Commit 6d1778d24ccab256f4dcc56ba3138be7cc84d2ca
1 parent
678c8ea0
Exists in
2.9
and in
1 other branch
Guia de instalação
Showing
2 changed files
with
191 additions
and
93 deletions
Show diff stats
@@ -0,0 +1,184 @@ | @@ -0,0 +1,184 @@ | ||
1 | +# Guia de instalação | ||
2 | + | ||
3 | +Você pode instalar o i-Educar diretamente no seu servidor web ou utilizar Docker. | ||
4 | + | ||
5 | +- [Dependências](#dependências) | ||
6 | +- [Instalação em servidor web](#instalação-em-servidor-web) | ||
7 | +- [Instalação utilizando Docker](#instalação-utilizando-docker) | ||
8 | +- [Primeiro acesso](#primeiro-acesso) | ||
9 | + | ||
10 | +## Dependências | ||
11 | + | ||
12 | +Para executar o projeto é necessário a utilização de alguns softwares. | ||
13 | + | ||
14 | +### Servidor | ||
15 | + | ||
16 | +- [PHP](http://php.net/) | ||
17 | +- [Composer](https://getcomposer.org/) | ||
18 | +- [Nginx](https://www.nginx.com/) | ||
19 | +- [Postgres](https://www.postgresql.org/) | ||
20 | +- [Redis](https://redis.io/) | ||
21 | +- [Git](https://git-scm.com/downloads) | ||
22 | + | ||
23 | +### Docker | ||
24 | + | ||
25 | +- [Docker](https://docs.docker.com/install/) | ||
26 | +- [Docker Compose](https://docs.docker.com/compose/install/) | ||
27 | + | ||
28 | +## Instalação em servidor web | ||
29 | + | ||
30 | +Para instalar o projeto execute **todos os passos** abaixo conectado em seu servidor web: | ||
31 | + | ||
32 | +> Este passo a passo é para um servidor Ubuntu 22.04 LTS | ||
33 | + | ||
34 | +Gere uma chave SSH no seu servidor, copie e adicione ao seu GitHub https://github.com/settings/keys. | ||
35 | + | ||
36 | +```bash | ||
37 | +ssh-keygen -t ed25519 | ||
38 | +cat ~/.ssh/id_ed25519.pub # copie e adicione ao seu GitHub | ||
39 | +``` | ||
40 | + | ||
41 | +Adicione os repositórios de dependências e sincronize a lista de diretórios: | ||
42 | + | ||
43 | +```bash | ||
44 | +add-apt-repository ppa:openjdk-r/ppa -y | ||
45 | +add-apt-repository ppa:ondrej/php -y | ||
46 | +apt update | ||
47 | +``` | ||
48 | + | ||
49 | +Instale as dependências: | ||
50 | + | ||
51 | +```bash | ||
52 | +apt install -y nginx openjdk-8-jdk postgresql postgresql-contrib openssl unzip php8.2-common php8.2-cli php8.2-fpm php8.2-bcmath php8.2-curl php8.2-mbstring php8.2-pgsql php8.2-xml php8.2-zip php8.2-gd | ||
53 | +``` | ||
54 | + | ||
55 | +Configure o banco de dados, será solicitado uma senha, utilize `ieducar`: | ||
56 | + | ||
57 | +```bash | ||
58 | +systemctl start postgresql.service | ||
59 | +sudo -i -u postgres | ||
60 | +createuser ieducar --superuser --createdb --pwprompt | ||
61 | +# Enter password for new role: | ||
62 | +# Enter it again: | ||
63 | +``` | ||
64 | + | ||
65 | +Crie o banco de dados e volte ao usuário `root`: | ||
66 | + | ||
67 | +```bash | ||
68 | +createdb ieducar | ||
69 | +exit | ||
70 | +``` | ||
71 | + | ||
72 | +Configure o Composer: | ||
73 | + | ||
74 | +```bash | ||
75 | +php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" | ||
76 | +php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" | ||
77 | +php composer-setup.php --install-dir=/usr/bin --filename=composer | ||
78 | +php -r "unlink('composer-setup.php');" | ||
79 | +export COMPOSER_ALLOW_SUPERUSER=1 | ||
80 | +``` | ||
81 | + | ||
82 | +Clone o repositório do i-Educar e copie o arquivo `.env`: | ||
83 | + | ||
84 | +```bash | ||
85 | +git clone https://github.com/portabilis/i-educar.git /var/www/ieducar | ||
86 | +cd /var/www/ieducar/ | ||
87 | +cp /var/www/ieducar/.env.example /var/www/ieducar/.env | ||
88 | +``` | ||
89 | + | ||
90 | +Copie os arquivos de configuração do Nginx: | ||
91 | + | ||
92 | +```bash | ||
93 | +cp /var/www/ieducar/docker/nginx/default.conf /etc/nginx/conf.d/default.conf | ||
94 | +cp /var/www/ieducar/docker/nginx/upstream.conf /etc/nginx/conf.d/upstream.conf | ||
95 | +sed -i 's/php:9000/unix:\/run\/php\/php-fpm.sock/g' /etc/nginx/conf.d/upstream.conf | ||
96 | +rm /etc/nginx/sites-enabled/default | ||
97 | + | ||
98 | +nginx -t | ||
99 | +nginx -s reload | ||
100 | + | ||
101 | +# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok | ||
102 | +# nginx: configuration file /etc/nginx/nginx.conf test is successful | ||
103 | +``` | ||
104 | + | ||
105 | +Faça a instalação do i-Educar: | ||
106 | + | ||
107 | +```bash | ||
108 | +composer new-install | ||
109 | +``` | ||
110 | + | ||
111 | +Este passo é opcional, mas caso você desejar, você pode popular o banco de dados com alguns dados iniciais utilizando o | ||
112 | +comando abaixo: | ||
113 | + | ||
114 | +```bash | ||
115 | +php artisan db:seed --class=DemoSeeder | ||
116 | +``` | ||
117 | + | ||
118 | + | ||
119 | + | ||
120 | +## Instalação utilizando Docker | ||
121 | + | ||
122 | +> ATENÇÃO: Essa forma de instação tem o objetivo de facilitar demonstrações e | ||
123 | +desenvolvimento. Não é recomendado para ambientes de produção! | ||
124 | + | ||
125 | +Para instalar o projeto execute **todos os passos** abaixo, caso você deseje | ||
126 | +atualizar sua instalação do i-Educar, siga os passos do [guia de atualização](UPGRADE.md). | ||
127 | + | ||
128 | +Clone o repositório: | ||
129 | + | ||
130 | +```bash | ||
131 | +git clone git@github.com:portabilis/i-educar.git && cd i-educar | ||
132 | +``` | ||
133 | + | ||
134 | +Copie o arquivo `docker-compose.example.yml` e faça as configurações para o seu ambiente: | ||
135 | + | ||
136 | +```bash | ||
137 | +cp docker-compose.example.yml docker-compose.override.yml | ||
138 | +``` | ||
139 | + | ||
140 | +Faça o build das imagens Docker utilizadas no projeto e inicie os containers da aplicação (pode levar alguns minutos): | ||
141 | + | ||
142 | +```bash | ||
143 | +docker-compose up -d --build | ||
144 | +``` | ||
145 | + | ||
146 | +Execute o comando para fazer uma nova instalação: | ||
147 | + | ||
148 | +```bash | ||
149 | +docker-compose exec php composer new-install | ||
150 | +``` | ||
151 | + | ||
152 | +### Personalizando a instalação | ||
153 | + | ||
154 | +No arquivo `docker-compose.override.yml` você pode personalizar sua instalação do i-Educar, mudando as portas dos | ||
155 | +serviços ou o mapeamento dos volumes da aplicação. | ||
156 | + | ||
157 | +### Xdebug | ||
158 | + | ||
159 | +A ferramenta [Xdebug](https://xdebug.org/) está incluída no projeto com o intuito de facilitar o processo de debug | ||
160 | +durante o desenvolvimento. Para configurá-la, modifique os valores das variáveis `XDEBUG_*` no arquivo | ||
161 | +`docker-compose.override.yml` conforme orientações da sua IDE de desenvolvimento. | ||
162 | + | ||
163 | +### Testes automatizados | ||
164 | + | ||
165 | +Para executar os testes automatizados, é necessário ter o i-Educar rodando com uma base limpa, apenas a estrutura | ||
166 | +inicial e suas migrations, crie o arquivo de configuração: | ||
167 | + | ||
168 | +```bash | ||
169 | +cp .env.example .env.testing | ||
170 | +``` | ||
171 | + | ||
172 | +Execute o comando: | ||
173 | + | ||
174 | +```bash | ||
175 | +docker-compose exec php vendor/bin/phpunit | ||
176 | +``` | ||
177 | + | ||
178 | +## Primeiro acesso | ||
179 | + | ||
180 | +Acesse http://localhost para fazer o seu primeiro acesso. | ||
181 | + | ||
182 | +O usuário padrão é: `admin` / A senha padrão é: `123456789`. | ||
183 | + | ||
184 | +Assim que realizar seu primeiro acesso **não se esqueça de alterar a senha padrão**. |
README.md
@@ -13,6 +13,8 @@ país por meio da educação. Junte-se a nós!** | @@ -13,6 +13,8 @@ país por meio da educação. Junte-se a nós!** | ||
13 | - [Como contribuir](#como-contribuir) | 13 | - [Como contribuir](#como-contribuir) |
14 | - [Instalação](#instalação) | 14 | - [Instalação](#instalação) |
15 | - [FAQ](#perguntas-frequentes-faq) | 15 | - [FAQ](#perguntas-frequentes-faq) |
16 | +- [Pacotes (módulos)](#pacotes-módulos) | ||
17 | +- [Upgrade](#upgrade) | ||
16 | 18 | ||
17 | ## Sobre o i-Educar | 19 | ## Sobre o i-Educar |
18 | 20 | ||
@@ -58,108 +60,20 @@ ajudar a alcançar nossos objetivos. | @@ -58,108 +60,20 @@ ajudar a alcançar nossos objetivos. | ||
58 | 60 | ||
59 | ## Instalação | 61 | ## Instalação |
60 | 62 | ||
61 | -- [Dependências](#dependências) | ||
62 | -- [Instalação utilizando Docker](#instalação-utilizando-docker) | ||
63 | -- [Primeiro acesso](#primeiro-acesso) | ||
64 | -- [Pacotes (módulos)](#pacotes-módulos) | ||
65 | -- [Upgrade](#upgrade) | ||
66 | - | ||
67 | -### Dependências | ||
68 | - | ||
69 | -Para executar o projeto é necessário a utilização de alguns softwares. | ||
70 | - | ||
71 | -#### Servidor | ||
72 | - | ||
73 | -- [PHP](http://php.net/) | ||
74 | -- [Composer](https://getcomposer.org/) | ||
75 | -- [Nginx](https://www.nginx.com/) | ||
76 | -- [Postgres](https://www.postgresql.org/) | ||
77 | -- [Redis](https://redis.io/) | ||
78 | -- [Git](https://git-scm.com/downloads) | ||
79 | - | ||
80 | -#### Docker | ||
81 | - | ||
82 | -- [Docker](https://docs.docker.com/install/) | ||
83 | -- [Docker Compose](https://docs.docker.com/compose/install/) | ||
84 | - | ||
85 | -### Instalação utilizando Docker | ||
86 | - | ||
87 | -> ATENÇÃO: Essa forma de instação tem o objetivo de facilitar demonstrações e | ||
88 | -desenvolvimento. Não é recomendado para ambientes de produção! | ||
89 | - | ||
90 | -Para instalar o projeto execute **todos os passos** abaixo, caso você deseje | ||
91 | -atualizar sua instalação do i-Educar, siga os passos do [guia de atualização](UPGRADE.md). | ||
92 | - | ||
93 | -Clone o repositório: | ||
94 | - | ||
95 | -```bash | ||
96 | -git clone git@github.com:portabilis/i-educar.git && cd i-educar | ||
97 | -``` | ||
98 | - | ||
99 | -Copie o arquivo `docker-compose.example.yml` e faça as configurações para o seu ambiente: | ||
100 | - | ||
101 | -```bash | ||
102 | -cp docker-compose.example.yml docker-compose.override.yml | ||
103 | -``` | ||
104 | - | ||
105 | -Faça o build das imagens Docker utilizadas no projeto e inicie os containers da aplicação (pode levar alguns minutos): | ||
106 | - | ||
107 | -```bash | ||
108 | -docker-compose up -d --build | ||
109 | -``` | ||
110 | - | ||
111 | -Execute o comando para fazer uma nova instalação: | ||
112 | - | ||
113 | -```bash | ||
114 | -docker-compose exec php composer new-install | ||
115 | -``` | ||
116 | - | ||
117 | -#### Personalizando a instalação | ||
118 | - | ||
119 | -No arquivo `docker-compose.override.yml` você pode personalizar sua instalação do i-Educar, mudando as portas dos | ||
120 | -serviços ou o mapeamento dos volumes da aplicação. | ||
121 | - | ||
122 | -#### Xdebug | ||
123 | - | ||
124 | -A ferramenta [Xdebug](https://xdebug.org/) está incluída no projeto com o intuito de facilitar o processo de debug | ||
125 | -durante o desenvolvimento. Para configurá-la, modifique os valores das variáveis `XDEBUG_*` no arquivo | ||
126 | -`docker-compose.override.yml` conforme orientações da sua IDE de desenvolvimento. | ||
127 | - | ||
128 | -#### Testes automatizados | ||
129 | - | ||
130 | -Para executar os testes automatizados, é necessário ter o i-Educar rodando com uma base limpa, apenas a estrutura | ||
131 | -inicial e suas migrations, crie o arquivo de configuração: | ||
132 | - | ||
133 | -```bash | ||
134 | -cp .env.example .env.testing | ||
135 | -``` | ||
136 | - | ||
137 | -Execute o comando: | ||
138 | - | ||
139 | -```bash | ||
140 | -docker-compose exec php vendor/bin/phpunit | ||
141 | -``` | ||
142 | - | ||
143 | -### Primeiro acesso | ||
144 | - | ||
145 | -Acesse http://localhost para fazer o seu primeiro acesso. | ||
146 | - | ||
147 | -O usuário padrão é: `admin` / A senha padrão é: `123456789`. | ||
148 | - | ||
149 | -Assim que realizar seu primeiro acesso **não se esqueça de alterar a senha padrão**. | 63 | +Consulte o passo a passo no [guia de instalação](INSTALL.md). |
150 | 64 | ||
151 | -### Pacotes (módulos) | 65 | +## Pacotes (módulos) |
152 | 66 | ||
153 | -O i-Educar possui um conjunto de pacotes (módulos) que o extendem e o tornam um software mais robusto. Para instalar um | 67 | +O i-Educar possui um conjunto de pacotes (módulos) que o extendem e o tornam um software mais robusto. Para instalar um |
154 | pacote, siga as instruções de instalação encontradas no repositório do projeto. | 68 | pacote, siga as instruções de instalação encontradas no repositório do projeto. |
155 | 69 | ||
156 | - [Módulo de Relatórios](https://github.com/portabilis/i-educar-reports-package/) | 70 | - [Módulo de Relatórios](https://github.com/portabilis/i-educar-reports-package/) |
157 | - [Módulo de Biblioteca](https://github.com/portabilis/i-educar-library-package/) | 71 | - [Módulo de Biblioteca](https://github.com/portabilis/i-educar-library-package/) |
158 | - [Módulo de Transporte](https://github.com/portabilis/i-educar-transport-package/) | 72 | - [Módulo de Transporte](https://github.com/portabilis/i-educar-transport-package/) |
159 | 73 | ||
160 | -### Upgrade | 74 | +## Upgrade |
161 | 75 | ||
162 | -Para realizar o _upgrade_ da versão do i-Educar, considere seguir os passos do [guia de atualização](UPGRADE.md). | 76 | +Para realizar o _upgrade_ da versão do i-Educar, considere seguir os passos no [guia de atualização](UPGRADE.md). |
163 | 77 | ||
164 | ## Perguntas frequentes (FAQ) | 78 | ## Perguntas frequentes (FAQ) |
165 | 79 |