Esta sección contiene los pasos que tienes que seguir para asegurarte de que tu configuración esté actualizada.
Primero y principal, para trabajar en buenas condiciones, asegúrate de que:
- tienes una conexión internet de alta velocidad
- tu computadora tiene suficiente memoria (8GB) para poder ejecutar tu código eficientemente
- tu computadora tiene suficiente espacio en disco (30GB) para poder trabajar con grandes datasets.
Verifica que git funcione:
git --version
👉 Deberías obtener algo parecido a esto de aquí abajo que te muestra la versión de git:
git version 2.33.0
Verifica que tengas acceso a los repositorios GitHub públicos de Le Wagon
cd ~/code/<YOUR_GITHUB_NICKNAME>/
git clone [email protected]:lewagon/data-setup data-setup
👉 Se debe clonar el repositorio correctamente:
Cloning into 'data-setup'...
remote: Enumerating objects: 21, done.
remote: Counting objects: 100% (21/21), done.
remote: Compressing objects: 100% (14/14), done.
Receiving objects: 100% (21/21), done.
Resolving deltas: 100% (6/6), done.
remote: Total 21 (delta 6), reused 16 (delta 1), pack-reused 0
👉 Puedes borrar el repositorio clonado
rm -Rf data-setup
Verifica que tengas un ~/.zprofile
:
cat ~/.zprofile
👉 Deberías poder ver las líneas siguientes:
# Setup the PATH for pyenv binaries and shims
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
type -a pyenv > /dev/null && eval "$(pyenv init --path)"
Si el comando no da ningún resultado, crea el archivo ~/.zprofile
:
cd
touch .zprofile
Agrega las siguientes líneas a tu ~/.zprofile
:
# Setup the PATH for pyenv binaries and shims
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
type -a pyenv > /dev/null && eval "$(pyenv init --path)"
Actualiza pyenv:
cd $(pyenv root) && git pull
Instala la versión actual de python:
pyenv install 3.10.6
👉 Asegúrate de que el comando se ejecute completamente y luego reinicia tu terminal.
Remueve el ambiente virtual dedicado actual:
pyenv virtualenv-delete lewagon_current
Crea un nuevo ambiente virtual:
pyenv virtualenv 3.10.6 lewagon_current
Define el nuevo ambiente virtual como predeterminado:
pyenv global lewagon_current
Ahora deberías poder ver que el nuevo ambiente virtual está activado:
pyenv versions
👉 Aquí hay una muestra del resultado:
system
3.10.6
3.10.6/envs/lewagon_current
3.7.6
3.7.6/envs/lewagon
* lewagon_current
lewagon
pip install -U pip
pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/linux.txt
Asegúrate de que el comando gcloud
esté conectado con el email de tu cuenta Google Cloud Platform:
gcloud auth list
👉 Esto muestra los emails de tu cuenta GCP:
Credentialed Accounts
ACTIVE ACCOUNT
* [email protected]
To set the active account, run:
$ gcloud config set account `ACCOUNT`
Verifica el nombre de tu proyecto gcp:
gcloud config list
👉 Esto muestra tanto el email de tu cuenta GCP como tu proyecto GCP:
[core]
account = [email protected]
disable_usage_reporting = True
project = your-gcp-project-id
Your active configuration is: [default]
Verifica que el email creado para la cuenta de servicio permita que tu código se identifique con GCP:
gcloud iam service-accounts list
👉 Esto muestra el email de la cuenta de servicio en GCP que permite que tu código se identifique con GCP.
DISPLAY NAME EMAIL DISABLED
your-gcp-project-id your-service-account@your-service-account.iam.gserviceaccount.com False
Ve a GCP IAM & Admin / Service Accounts:
- Selecciona tu proyecto
- Haz clic en el email de la cuenta de servicio
- Ve a
PERMISSIONS
- Asegúrate de que el email de la cuenta de servicio tenga un
Role
configurado comoOwner
Verifica que hayas configurado tu máquina para que permita que tu código se identifique con GCP. El archivo de claves json de las credenciales de la cuenta de servicio debe estar conectado al email de la cuenta de servicio correcto:
cat $GOOGLE_APPLICATION_CREDENTIALS
👉 Esto muestra el contenido de la clave json de las credenciales de la cuenta de servicio:
{
"type": "service_account",
"project_id": "your-gcp-project-id",
"private_key_id": "a2d4a2d4a2d4a2d4a2d4a2d4a2d4a2d4a2d4a2d4",
"private_key": "-----BEGIN PRIVATE KEY-----\nMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInMIInM=\n-----END PRIVATE KEY-----\n",
"client_email": "your-service-account@your-service-account.iam.gserviceaccount.com",
"client_id": "105410541054105410541",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/your-service-account%40your-service-account.iam.gserviceaccount.com"
}
Asegúrate de que el archivo contenga:
- el id el proyecto adecuado: your-gcp-project-id
- el email de la cuenta de servicio adecuado: your-service-account@your-service-account.iam.gserviceaccount.com
👉 Si esto no muestra nada o si el email dentro del archivo no es el de tu cuenta de servicio, regresa al setup.
Asegúrate de que Docker reconozca a los recursos GCP:
gcloud auth configure-docker
👉 Esto muestra los prefijos de los nombres de las imágenes que Docker reconoce como destinados a GCP
{
"credHelpers": {
"us.gcr.io": "gcloud",
"eu.gcr.io": "gcloud",
"asia.gcr.io": "gcloud",
"staging-k8s.gcr.io": "gcloud",
"marketplace.gcr.io": "gcloud",
"gcr.io": "gcloud"
}
}
Start the Docker Desktop app
Verifica que Docker pueda ejecutar la imagen de hello-world:
docker run hello-world
👉 Asegúrate de que este comando se ejecute completamente
Stop the Docker Desktop app
Verifica tu versión de Python con los siguientes comandos:
zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/python_checker.sh)" 3.10.6
Ejecuta el comando siguiente para verificar que hayas instalado los paquetes requeridos correctamente:
zsh -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.sh)"
Ahora ejecuta el siguiente comando para verificar que puedas cargar estos paquetes:
python -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/data-setup/master/checks/pip_check.py)"
Asegúrate de que puedas usar Jupyter:
jupyter notebook
Y abre un notebook Python 3
.
Asegúrate de que estés usando la versión correcta de python en el notebook. Abre una celda y ejecuta lo siguiente:
import sys; sys.version
¡Listo! Ya tienes un virtual env de python completo con todos los paquetes tercerizados que necesitarás en el bootcamp.