Diferenças
Aqui você vê as diferenças entre duas revisões dessa página.
Ambos lados da revisão anterior Revisão anterior Próxima revisão | Revisão anterior | ||
sistemas:suap:ambientedev2:wsl [2021/01/21 11:03] Edwilson de Sousa Carvalho |
sistemas:suap:ambientedev2:wsl [2022/07/24 21:37] (atual) Francisco Eudes Gomes Filho |
||
---|---|---|---|
Linha 2: | Linha 2: | ||
Adapte as etapas abaixo ao seu ambiente de desenvolvimento e às suas preferências. Caso não use o WSL, ou queira pular direto para a instalação do SUAP em si veja o item **Instalação do SUAP no Linux (ambiente de desenvolvimento)**. | Adapte as etapas abaixo ao seu ambiente de desenvolvimento e às suas preferências. Caso não use o WSL, ou queira pular direto para a instalação do SUAP em si veja o item **Instalação do SUAP no Linux (ambiente de desenvolvimento)**. | ||
+ | |||
+ | Observe também que em caso de um ambiente pré-existente alguns passos não serão necessários, | ||
Opção 1: | Opção 1: | ||
Linha 7: | Linha 9: | ||
1. No menu iniciar localizar a opção " | 1. No menu iniciar localizar a opção " | ||
- | 2. Marcar a opção Subsistema do Windows para Linux | + | 2. Marcar a opção Subsistema do Windows para Linux e Plataforma de Máquina Virtual |
{{ : | {{ : | ||
Linha 15: | Linha 17: | ||
1. Abrir o Powershell como Administrador e executar o comando abaixo: | 1. Abrir o Powershell como Administrador e executar o comando abaixo: | ||
- | < | + | < |
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux | Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux | ||
</ | </ | ||
Linha 23: | Linha 25: | ||
Após a instalação do Ubuntu via WSL executar todos os comandos abrindo o terminal do Ubuntu localizando-o no menu iniciar ou digitando ubuntu1804 no prompt de comando (cmd). | Após a instalação do Ubuntu via WSL executar todos os comandos abrindo o terminal do Ubuntu localizando-o no menu iniciar ou digitando ubuntu1804 no prompt de comando (cmd). | ||
- | **Conversão para WSL2** | + | **Conversão para WSL2 (caso já possua o WSL 1 instalado)** |
O WSL2 trouxe um ganho significativo de desempenho, portanto, recomenda-se a atualização. É necessário que o Windows 10 esteja pelo menos na versão 1903, com build 18362 ou superior. | O WSL2 trouxe um ganho significativo de desempenho, portanto, recomenda-se a atualização. É necessário que o Windows 10 esteja pelo menos na versão 1903, com build 18362 ou superior. | ||
Linha 31: | Linha 33: | ||
Abra o PowerShell como Administrador e execute o comando abaixo: | Abra o PowerShell como Administrador e execute o comando abaixo: | ||
- | < | + | < |
dism.exe /online / | dism.exe /online / | ||
</ | </ | ||
Linha 41: | Linha 43: | ||
Abra o PowerShell e execute o comando abaixo: | Abra o PowerShell e execute o comando abaixo: | ||
- | < | + | < |
wsl --set-default-version 2 | wsl --set-default-version 2 | ||
</ | </ | ||
Linha 49: | Linha 51: | ||
Abra o PowerShell e execute o comando abaixo para visualizar as distribuições e respectiva versão do WSL | Abra o PowerShell e execute o comando abaixo para visualizar as distribuições e respectiva versão do WSL | ||
- | < | + | < |
wsl --list --verbose | wsl --list --verbose | ||
# exemplo: Ubuntu-18.04 Running 1 | # exemplo: Ubuntu-18.04 Running 1 | ||
Linha 56: | Linha 58: | ||
Comando para converter a imagem em WSL2 | Comando para converter a imagem em WSL2 | ||
- | < | + | < |
# wsl --set-version < | # wsl --set-version < | ||
# exemplo: | # exemplo: | ||
- | wsl --set-version Ubuntu-18.04 2 | + | wsl --set-version Ubuntu-20.04 2 |
</ | </ | ||
Linha 72: | Linha 74: | ||
====== Instalação do SUAP no Linux (ambiente de desenvolvimento) ====== | ====== Instalação do SUAP no Linux (ambiente de desenvolvimento) ====== | ||
- | 1) Instalar | + | **Instalar |
- | < | + | < |
- | sudo apt install | + | sudo apt-get install |
- | </ | + | # pacotes extras ifce |
- | Configuração para evitar erro " | + | sudo apt-get install -y python3.8-dev python3.8-distutils build-essential python3-setuptools libatlas-base-dev liblapack-dev libpq-dev libjpeg-dev |
- | < | + | sudo apt-get install -y libfreetype6-dev zlib1g-dev freetds-dev libxmlsec1-dev libblas-dev |
- | git config | + | sudo apt-get install -y gfortran libffi-dev wkhtmltopdf poppler-utils libxml2-dev libxslt1-dev |
+ | # pacotes abaixo em revisão | ||
+ | sudo apt-get install -y libglu1-mesa libcups2 libdbus-glib-1-2 libxinerama1 libsm6 tmpreaper libgdk-pixbuf2.0-0 | ||
+ | sudo apt-get install -y shared-mime-info python3-wheel python3-cffi libpango-1.0-0 libpangocairo-1.0-0 | ||
</ | </ | ||
- | |||
- | 2) Instalar alguns pacotes necessários para a aplicação SUAP | ||
- | |||
- | <WRAP prewrap> | ||
- | < | ||
- | sudo apt install build-essential python3-dev python3-setuptools libldap2-dev libsasl2-dev libpq-dev libjpeg-dev libfreetype6-dev zlib1g-dev freetds-dev libxmlsec1-dev libblas-dev liblapack-dev libatlas-base-dev gfortran redis-server libssl-dev libffi-dev wkhtmltopdf poppler-utils | ||
- | </ | ||
- | </ | ||
2.1) Instalar o Postgres | 2.1) Instalar o Postgres | ||
Linha 94: | Linha 91: | ||
Instalar | Instalar | ||
- | < | + | < |
+ | wget --quiet -O - https:// | ||
+ | |||
+ | echo "deb http:// | ||
+ | |||
+ | sudo apt update | ||
+ | |||
+ | sudo apt install postgresql-13 | ||
+ | </ | ||
Alterar permissões de acesso | Alterar permissões de acesso | ||
- | < | + | < |
- | sudo nano / | + | sudo nano / |
# modificar a linha | # modificar a linha | ||
host all | host all | ||
Linha 108: | Linha 113: | ||
Iniciar | Iniciar | ||
- | < | + | < |
- | + | ||
- | + | ||
- | + | ||
- | 3) Instalar o pip. | + | |
- | + | ||
- | < | + | |
- | sudo apt install python-pip | + | |
- | </ | + | |
- | + | ||
- | Se houver problemas ao instalar o pip, coloque o DNS do Google: | + | |
- | + | ||
- | < | + | |
- | sudo nano / | + | |
- | </ | + | |
- | + | ||
- | Inserir o conteúdo: | + | |
- | + | ||
- | < | + | |
- | nameserver 8.8.8.8 | + | |
- | </ | + | |
- | + | ||
- | Salvar e, no terminal: | + | |
- | + | ||
- | < | + | |
- | sudo resolvconf -u | + | |
- | </ | + | |
-------------------- | -------------------- | ||
Linha 140: | Linha 119: | ||
4) Criar a pasta /opt/suap | 4) Criar a pasta /opt/suap | ||
- | <WRAP prewrap> | + | < |
- | < | + | sudo mkdir /opt/suap |
- | sudo mkdir /opt/suap20 | + | |
sudo chown -R seu_usuario: | sudo chown -R seu_usuario: | ||
</ | </ | ||
- | </ | ||
5) Fazer o clone do SUAP | 5) Fazer o clone do SUAP | ||
- | **Via HTTPS** | + | **Via HTTPS (não recomendado pois ficará sempre pedindo usuário/ |
- | < | + | < |
# no diretório /opt | # no diretório /opt | ||
- | git clone https:// | + | git clone https:// |
</ | </ | ||
- | **Via SSH** | + | **Via SSH (configuração recomendada)** |
+ | |||
+ | Para fazer o clone via SSH é necessário ter a [[sistemas: | ||
- | < | + | < |
# no diretório /opt | # no diretório /opt | ||
- | git clone git@gitlab.ifce.edu.br: | + | git clone git@gitlab.ifce.edu.br: |
</ | </ | ||
- | 6) Mudar o dono da pasta | + | 6) Permissões gerais das pastas |
- | <WRAP prewrap> | + | < |
- | < | + | # carece de testes. acredito que essa pasta não é mais necessária |
- | sudo chown -R seu_usuario: | + | # sudo mkdir /opt/suap/ |
+ | # sudo chmod o+rw / | ||
+ | # sudo chmod g+rw / | ||
+ | sudo chmod go+rw / | ||
+ | sudo chmod | ||
</ | </ | ||
- | </ | ||
- | 7) criar a pasta suap20/ | + | 7) Crie o arquivo settings.py |
- | <WRAP prewrap> | + | < |
- | < | + | |
- | # sudo mkdir / | + | |
- | # sudo chmod o+rw / | + | |
- | # sudo chmod g+rw / | + | |
- | sudo chmod go+rw / | + | |
- | </ | + | |
- | </ | + | |
- | + | ||
- | 8) Crie o arquivo settings.py | + | |
- | + | ||
- | <WRAP prewrap> | + | |
- | < | + | |
sudo cp / | sudo cp / | ||
</ | </ | ||
- | </ | ||
- | 9) Instalar e ativar o virtualenv | + | 8) Instalar e ativar o virtualenv |
- | É importante | + | É obrigatório |
- | < | + | < |
# Verificar a versão do Python 3 instalada na máquina | # Verificar a versão do Python 3 instalada na máquina | ||
python3 --version | python3 --version | ||
Linha 205: | Linha 174: | ||
sudo update-alternatives --install / | sudo update-alternatives --install / | ||
sudo update-alternatives --install / | sudo update-alternatives --install / | ||
- | |||
- | -- após a execução do comando abaixo escolher a versão correspondente ao Python 3.8 | ||
- | sudo update-alternatives --config python3 | ||
# Obter o caminho da instalação do Python 3 | # Obter o caminho da instalação do Python 3 | ||
Linha 214: | Linha 180: | ||
</ | </ | ||
- | < | + | < |
sudo apt install virtualenv | sudo apt install virtualenv | ||
cd ~ | cd ~ | ||
Linha 224: | Linha 190: | ||
</ | </ | ||
- | 10) Instalar as bibliotecas do Python/Django com sudo pip install | + | **Em produção/homologação: |
- | < | + | Recomenda-se adicionar ao .bashrc o comando para inicializar o virtualenv assim que o usuário iniciar uma sessão do shell. |
+ | |||
+ | < | ||
+ | nano ~/.bashrc | ||
+ | # acrescentar ao final o conteúdo abaixo: | ||
+ | source / | ||
+ | </ | ||
+ | |||
+ | 10) Instalar as bibliotecas do Python/ | ||
+ | |||
+ | <code bash> | ||
+ | cd / | ||
# source ~/ | # source ~/ | ||
+ | # atualizar a versão do pip antes de tentar instalar os requirements | ||
+ | pip3 install --upgrade pip | ||
pip install -U -r / | pip install -U -r / | ||
+ | </ | ||
+ | |||
+ | Caso seja exibido o erro " | ||
+ | |||
+ | <code bash> | ||
+ | git config --global url." | ||
</ | </ | ||
11) Dar um chmod em / | 11) Dar um chmod em / | ||
- | < | + | < |
sudo touch / | sudo touch / | ||
sudo chmod 777 / | sudo chmod 777 / | ||
Linha 242: | Linha 227: | ||
13) Após restaurar a base de dados, usar o comando sync | 13) Após restaurar a base de dados, usar o comando sync | ||
- | < | + | O comando sync roda os comandos collectstatic, |
+ | |||
+ | < | ||
# /opt/suap | # /opt/suap | ||
python manage.py sync | python manage.py sync |