Prezados leitores,

Neste post irei apresentar como você pode instalar o GeoNode via Docker em uma máquina rodando o Ubuntu Linux 22.04. Ao final dessa instalação você estará com uma instância do GeoNode executando no seu localhost.

Sem enrolação, vamos aos passos:

1. Instalar os pacotes do S.O

sudo add-apt-repository universe
sudo apt-get update -y
sudo apt-get install -y git-core git-buildpackage debhelper devscripts python3.10-dev python3.10-venv virtualenvwrapper
sudo apt-get install -y apt-transport-https ca-certificates curl lsb-release gnupg gnupg-agent software-properties-common vim

2. Adicionar os repositórios do Docker

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

3. Adicionar os pacotes do Docker

sudo apt-get update -y
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose
sudo apt autoremove --purge
sudo reboot

4. Adicionar seu usuário ao grupo docker

sudo usermod -aG docker ${USER}
su ${USER}

5. Preparar o ambiente

sudo mkdir -p /opt/geonode_custom/
sudo usermod -a -G www-data geonode
sudo chown -Rf geonode:www-data /opt/geonode_custom/
sudo chmod -Rf 775 /opt/geonode_custom/

Dica: Se o nome do seu usuário não for geonode, substitua pelo nome do seu usuário na linha 2 e 3 acima.

6. Clonar o código fonte

cd /opt/geonode_custom/
git clone https://github.com/GeoNode/geonode-project.git -b 4.4.2

Dica: É importante ressaltar que o número que você passar após o -b é na realidade a versão que você quer baixar/instalar do GeoNode

7. Criar uma instância do Django

source /usr/share/virtualenvwrapper/virtualenvwrapper.sh
mkvirtualenv --python=/usr/bin/python3 my_geonode
pip install Django==3.2.13
django-admin startproject --template=./geonode-project -e py,sh,md,rst,json,yml,ini,env,sample,properties -n monitoring-cron -n Dockerfile my_geonode
cd /opt/geonode_custom/my_geonode

OBS: Chamaremos nossa instância de my_geonode. Você pode alterar o nome conforme desejar.

8. Criar o arquivo .env

python create-envfile.py

9. Construa os containers

docker-compose -f docker-compose.yml build --no-cache

10. Finalmente execute o container

docker-compose -f docker-compose.yml up -d

Agora é só aguardar todos os containers aparecerem como done, e você já pode acessar o GeoNode no seu navegador digitando http://localhost/

Se você quiser mais detalhes sobre a instalação basta acessar a documentação oficial do GeoNode, clicando aqui.