Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save piegu/ce646a43943c4fcd0e3870030a414624 to your computer and use it in GitHub Desktop.
Save piegu/ce646a43943c4fcd0e3870030a414624 to your computer and use it in GitHub Desktop.

Acesso ao GCP e servidor Jupyter pela rede ISC

Solução para contornar o problema de tunelamento usando ssh para acessar o Jupyter notebook que é bloqueado pelo firewall da rede wifi do ISC, onde ocorrem os encontros presenciais do grupo de estudo em Deep Learning de Brasília.

A ideia é tornar o servidor jupyter executando no Google Cloud Platform (GCP) acessível para rede externa, diretamente por seu IP, sem a necessidade de tunelamento via ssh.

Alterando as configurações da instância na console GCP

https://console.cloud.google.com/networking/addresses/

Logado na console GCP, acessar o endereço acima e reservar um endereço IP estático: "Reserve Static Address". Anotar esse endereço "IP_instância" que será algo no formato: 35.235.115.21

https://console.cloud.google.com/networking/firewalls/

Criar nova regra para o firewall da sua instância, nos seguintes moldes: Configuração rede VPC

Abrindo o Google Cloud Shell

https://console.cloud.google.com/compute/instances

Inicie a instância e abra o shell:

gcp shell

Mudando permissões na pasta do usuario jupyter

Execute os comandos abaixo para permitir que o usuario do shell possa modificar o conteudo dos notebooks

sudo chmod -R 777 /home/jupyter/

Configurando Jupyter

Vamos configurar o Jupyter para usarmos senha para acessar, ao invés de token e também para permitir acesso remoto.

O passo de definição de senha não é obrigatório, mas daí será preciso usar o token criado na inicialização do Jupyter. Creio que seja mais prático acessá-lo usando senha.

Criando o arquivo de configuração do Jupyter, execute os comandos abaixo.

Cria arquivo de configuração:

jupyter notebook --generate-config

Define sua própria senha de acesso:

jupyter notebook password

Edita o arquivo de configuração criado:

nano ~/.jupyter/jupyter_notebook_config.py

Adicione no editor nano (ou outro de sua preferência) as seguintes linhas, para habilitar acesso remoto:

c.NotebookApp.ip = '*'
c.NotebookApp.token = ''
c.NotebookApp.open_browser = False
c.NotebookApp.port = 8080
c.NotebookApp.allow_remote_access = True

Finalmente, lança a execução do servidor jupyter na pasta em que tem acesso aos cadernos da fastai

jupyter notebook /home/jupyter &

Acessando Jupyter pelo IP fixo

Acesse o servidor jupyter pelo IP fixo de sua instância, no seu navegador local: http://IP_instância:8080

Substituir, acima, o "IP_instância" pelo número IP anotado anteriormente, como, por exemplo: 35.235.115.21 ficaria http://35.235.115.21:8080

Insira a senha que você definiu em passo anterior na configuração de seu Jupyter e voilá!

:wq!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment