Aquí abajo encontrarás las instrucciones para configurar tu computadora para el curso de Data Science de Le Wagon
Por favor léelas cuidadosamente y ejecuta todos los comandos en el siguiente orden. Si tienes algún problema, no dudes en pedirle ayuda a una profesor 🙋
¡Comencemos! 🚀
Para poder interactuar cuando no estemos en el mismo lugar físico, usaremos Zoom, una herramienta de videoconferencia.
Ve a zoom.us/download.
Haz clic en el botón Download debajo de Zoom Client.
Abre el archivo que acabas de descargar para instalar la aplicación.
Abre la aplicación Zoom.
Si ya tienes una cuenta Zoom, inicia sesión con tus credenciales.
Si no, haz clic en el enlace Sign Up Free, que significa registrarse gratuitamente:
Te redireccionarán a la página de Zoom para que completes un formulario.
Cuando termines, regresa a la aplicación Zoom e inicia sesión usando tus credenciales.
Deberías ver una pantalla como la siguiente:
Ya puedes cerrar la aplicación Zoom.
¿Ya tienes una cuenta GitHub? Si no es el caso, ábrela ya.
👉 Sube una foto y escribe tu nombre correctamente en tu cuenta GitHub. Esto es importante porque nosotros usaremos un tablero de comando interno con tu avatar. Por favor hazlo ahora antes de dar un paso más en esta guía.
👉 Habilita la Autenticación de Dos Factores (2FA). GitHub te enviará mensajes de texto con un código cuando intentes iniciar sesión. Esto es importante para la seguridad y también pronto será necesario para contribuir código en GitHub.
Si compraste tu computadora después de finales del 2020, es probable que tenga un nuevo chip Apple Silicon en lugar de un procesador Intel: descubrámoslo.
Abre una nueva ventana de la tarminal desde Aplicaciones > Utilidades o búscala con Spotlight:
Copia y pega el siguiente comando en la terminal y presiona Enter
para ejecutarlo.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/lewagon/setup/master/utils/macos_list_processor_type.sh)"
☝️ El resultado del comando debería indicar si tu computadora usa un chip Apple Silicon.
Si tu computadora usa Apple Silicon, expande el siguiente párrafo y ejecútalo. En caso contrario, ignóralo.
👉 Setup para Apple Silicon 👈
Quieres asegurarte que no estás usando Rosetta, que es una forma de usar tu Terminal como si tuvieras una computadora con Intel.
Abre la app Finder (o búscala con Spotlight).
Ve a Aplicaciones > Utilidades.
Ubica la app Terminal (selecciónala).
Presiona Cmd
+ I
en la app Terminal, luego verifica que la caja "Abrir usando Rosetta" esté desmarcada.
En caso de que no veas esta caja, simplemente continúa.
🚨 Ten esto en mente. Deberás recordarlo más adelante en este setup si tu computadora usa un chip Apple Silicon o Intel.
Hacer clic en círculo rojo en la esquina superior izquierda de la ventana de la aplicación en Mac no la termina el proceso, solo cierra una ventana activa. Hay dos alternativas para cerrar la aplicación realmente. Puedes presionar Cmd + Q
cuando la misma está activa. La otra opción es ir a APP_NAME
-> Quit
en la barra del menú.
Durante esta configuración, se te pedirá cerrar y abrir nuevamente aplicaciones varias veces. Por favor asegúrate de hacerlo correctamente 🙏
Abre una nueva terminal, copia y pega el comando siguiente y presiona Enter
:
xcode-select --install
Si obtienes el mensaje que te mostramos a continuación, puedes ignorar este paso e ir al siguiente.
# command line tools are already installed, use "Software Update" to install updates
Este mensaje significa que las herramientas de la línea de comando ya están instaladas y te pide que uses "Software Update" para instalar las actualizaciones. Si no recibes este mensaje, se abrirá una ventana preguntándote si quieres instalar algún programa: haz clic en "Install" y espera.
✔️ Si ves el mensaje "The software was installed", lo que significa que el programa se ha instalado, entonces todo está bien 👍
❌ Si falla el comando xcode-select --install
, intenta nuevamente: algunas veces los servidores de Apple se sobrecargan.
❌ Si ves el mensaje "Xcode is not currently available from the Software Update server", debes actualizar el catálogo de actualización de programas:
sudo softwareupdate --clear-catalog
Cuando termines eso, puedes intentar hacer la instalación nuevamente.
Si usas Mac tienes que instalar Homebrew el cual es un sistema de gestión de paquetes. Será necesario cuando tengamos que instalar algún programa. Para instalarlo, abre tu Terminal y ejecuta lo siguiente:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Te pedirá tu confirmación (presiona Enter
) y tu contraseña de usuario macOS (la que usas para iniciar sesión cuando reinicias tu Macbook).
:warning: Cuando escribas tu contraseña en la Terminal, no la verás (sólo verás algo como *****
). ¡Esto es normal! Simplemente escribe tu contraseña y confirma presionando Enter
.
🛠 Si aparece un Error: Not a valid ref: refs/remotes/origin/master
El error completo es el siguiente:
Error: Not a valid ref: refs/remotes/origin/master :
fatal: ambiguous argument 'refs/remotes/origin/master': unknown revision or path not in the working tree.
Ejecuta los siguientes comandos para resolverlo:
rm -fr $(brew --repo homebrew/core) # because you can't `brew untap homebrew/core`
brew tap homebrew/core
Si ya tienes Homebrew, el sistema te lo dirá. No hay problema, así que puedes continuar.
brew update
🛠 Si aparece un error /usr/local must be writable
Simplemente ejecuta lo siguiente:
sudo chown -R $USER:admin /usr/local
brew update
Ejecuta lo siguiente en la terminal (puedes copiar / pegar todas las líneas juntas una sola vez).
brew upgrade git || brew install git
brew upgrade gh || brew install gh
brew upgrade wget || brew install wget
brew upgrade imagemagick || brew install imagemagick
brew upgrade jq || brew install jq
brew upgrade openssl || brew install openssl
brew upgrade tree || brew install tree
brew upgrade ncdu || brew install ncdu
brew upgrade xz || brew install xz
brew upgrade readline || brew install readline
Instala el navegador Google Chrome si no lo tienes todavía y configúralo como tu navegador predeterminado.
Sigue los pasos en el siguiente enlace 👉 Instalación de Google Chrome
¿Por qué Chrome?
Lo recomendamos como navegador predeterminado porque es el más compatible con los tests y la ejecución de código. Además trabaja con Google Cloud Platform. Otra opción es Firefox. No recomendamos usar otros navegadores como Opera, Internet Explorer o Safari.
Instala el editor de texto Visual Studio Code.
Copia (presionando Cmd
+ C
) el comando de aquí abajo y luego pégalo en tu terminal (con Cmd
+ V
):
brew install --cask visual-studio-code
Luego abre VS Code ejecutando el siguiente comando en tu terminal:
code
✔️ Si se acaba de abrir una ventana de VS Code, todo está bien y puedes continuar 👍
❌ De lo contrario, por favor contacta a un profesor.
Instala algunas extensiones útiles para VS Code.
code --install-extension ms-vscode.sublime-keybindings
code --install-extension emmanuelbeziat.vscode-great-icons
code --install-extension MS-vsliveshare.vsliveshare
code --install-extension ms-python.python
code --install-extension KevinRose.vsc-python-indent
code --install-extension ms-python.vscode-pylance
code --install-extension ms-toolsai.jupyter
Aquí está la lista de las extensiones que estás instalando:
- Sublime Text Keymap and Settings Importer
- VSCode Great Icons
- Live Share
- Python
- Python Indent
- Pylance
- Jupyter
Visual Studio Live Share es una extensión de VS Code que te permite compartir el código en tu editor de texto para debugging y pair-programming: ¡Instalémoslo!
Abre VS Code desde tu terminal escribiendo code
y presionando Enter
.
Haz clic en la pequeña flecha de la parte inferior de la barra de la izquierda:
- Haz clic en el botón "Share". Luego en "GitHub (Inicia sesión usando tu cuenta GitHub)".
- Va a aparecer una ventana emergente pidiéndote que inicies sesión con GitHub: Haz clic en "Allow".
- Te redireccionarán a una página GitHub en tu navegador pidiéndote que autorices Visual Studio Code: Haz clic en "Continue" y luego en "Authorize github".
- Es posible que VS Code muestre más ventanas emergentess: Ciérralas haciendo clic en "OK".
Eso es todo. ¡Ya puedes continuar!
Instalemos el plugin zsh
Oh My Zsh.
Ejecuta este comando en la terminal:
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
Si te preguntan "Do you want to change your default shell to zsh?", presiona Y
Cuando termines, tu terminal debería lucir así:
✔️ Si es el caso, puedes continuar 👍
❌ Si no, por favor pídele ayuda a un profesor.
direnv es una extensión del shell. Facilita trabajar con variables de entorno por proyecto, lo cual será útil para customizar el comportamiento de tu código.
brew install direnv
echo 'eval "$(direnv hook zsh)"' >> ~/.zshrc
CLI es una abreviación de Command-line Interface que significa interfaz de línea de comando.
En esta sección usaremos GitHub CLI para interactuar directamente con GitHub desde la terminal.
Ya debería haberse instalado en tu computadora con los comandos que ejecutaste anteriormente.
Lo primero que hay que hacer para iniciar sesión es copiar y pegar el comando siguiente en tu terminal:
email
gh auth login -s 'user:email' -w
gh le hará algunas preguntas:
What is your preferred protocol for Git operations?
Con las flechas, elige SSH
y presiona Enter
. SSH es un protocolo para iniciar la sesión utilizando claves SSH en lugar de la famosa pareja nombre de usuario y contraseña.
Generate a new SSH key to add to your GitHub account?
Presiona Enter
para pedirle a gh que genere las claves SSH por ti.
Si ya tienes claves SSH, verás en su lugar Upload your SSH public key to your GitHub account?
Con las flechas, selecciona la ruta de tu archivo de clave pública y pulsa Intro
.
Enter a passphrase for your new SSH key (Optional)
. Pon algo que quieras y que recuerdes. Es una contraseña para proteger tu private key que está almacenada en tu disco duro. Luego presiona Enter
.
Title for your SSH key
. Puede dejarlo en la propuesta "GitHub CLI", presiona Enter
.
Obtendrás el siguiente resultado:
! First copy your one-time code: 0EF9-D015
- Press Enter to open github.com in your browser...
Selecciona y copia el código (0EF9-D015
en el ejemplo) y luego presiona Enter
.
Tu navegador se abrirá y te pedirá que autorices GitHub CLI para usar tu cuenta GitHub. Acepta y espera un poco.
Regresa a la terminal, presiona Enter
nuevamente y listo. Eso es todo.
Para verificar que están conectado correctamente, escribe lo siguiente:
gh auth status
✔️ Si obtienes este mensaje: Logged in to github.com as <YOUR USERNAME>
, significa que todo está bien 👍
❌ De lo contrario, contacta a un profesor.
Hay tres opciones, escoge una:
Ya hice el bootcamp de Web Development (FullStack) de Le Wagon en la misma laptop
Esto significa que ya has hecho el fork del repositorio GitHub lewagon/dotfiles
pero tal vez la configuración para el nuevo bootcamp de Data Science no estaba lista en ese momento.
Abre tu terminal y ve a tu proyecto dotfiles
:
cd ~/code/<YOUR_GITHUB_NICKNAME>/dotfiles
code . # Open it in VS Code
En VS Codeabre el archivo zshrc
. Reemplaza su contenido con la versión más reciente de ese archivo que te suministramos. Luego guárdalo en el disco.
Regresa a la terminal y ejecuta un git diff
y pídele a un TA que venga y verifique este cambio de configuración. Debería ver cosas de Python y pyenv
.
Cuando el TA termine de hacer la verificación, haz un commit y haz el push de tus cambios:
git add zshrc
git commit -m "Update zshrc for Data Science bootcamp"
git push origin master
O
No he hecho el bootcamp de Web Development (FullStack) de Le Wagon
Los hackers aman mejorar sus shells y sus herramientas. Comenzaremos con una configuración por defecto genial proporcionada por Le Wagon y almacenada en GitHub. Tu configuración es personal, así que necesitas tu propio repositorio para almacenarla. Primero tienes que hacer el fork del repositorio en tu cuenta GitHub.
➡️ Haz clic aquí para hacer el fork del repositorio lewagon/dotfiles
a tu cuenta (deberás hacer clic nuevamente en tu foto para confirmar dónde harás el fork).
Hacer un fork significa que crearás un nuevo repositorio en tu cuenta GitHub idéntico al original. Tendrás un nuevo repositorio en tu cuenta GitHub, your_github_username/dotfiles
. El fork es necesario porque cada uno de ustedes necesitará poner información específica (e.g. tu nombre) en esos archivos.
Abre tu terminal y ejecuta el comando siguiente:
export GITHUB_USERNAME=`gh api user | jq -r '.login'`
echo $GITHUB_USERNAME
Deberías ver tu usuario GitHub. Si no es así, no hagas más nada y pide ayuda.
Parece que hay un problema con el paso anterior (gh auth
).
Es hora de hacer el fork del repositorio y clonarlo en tu laptop:
mkdir -p ~/code/$GITHUB_USERNAME && cd $_
gh repo fork lewagon/dotfiles --clone
Ejecuta el instalador de dotfiles
.
cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh
Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso:
gh api user/emails | jq -r '.[].email'
Ejecuta el instalador de git:
cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh
☝️ Esto te guiará con tu nombre (FirstName LastName
) y con tu email.
:warning: Cuidado, debes poner uno de los emails de la lista de arriba que te suministra el comando gh api ...
usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará públicamente en internet. 💡 Selecciona la dirección @users.noreply.github.com
si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir.
Ahora cierra todas las ventanas de tu terminal que tengas abiertas por favor.
OR
IYa hice el bootcamp de Web Development (FullStack) de Le Wagon pero tengo una nueva laptop
Abre tu terminal y ejecuta el comando siguiente:
export GITHUB_USERNAME=`gh api user | jq -r '.login'`
echo $GITHUB_USERNAME
Deberías ver tu usuario GitHub. Si no es así, no hagas más nada y pide ayuda.
Parece que hay un problema con el paso anterior (gh auth
).
Es hora de hacer el fork del repositorio y clonarlo en tu laptop:
mkdir -p ~/code/$GITHUB_USERNAME && cd $_
gh repo fork lewagon/dotfiles --clone
Ejecuta el instalador de dotfiles
.
cd ~/code/$GITHUB_USERNAME/dotfiles && zsh install.sh
Verifica los emails registrados en tu cuenta GitHub. Deberás seleccionar uno de ellos en el próximo paso:
gh api user/emails | jq -r '.[].email'
Ejecuta el instalador de git:
cd ~/code/$GITHUB_USERNAME/dotfiles && zsh git_setup.sh
☝️ Esto te guiará con tu nombre (FirstName LastName
) y con tu email.
:warning: Cuidado, debes poner uno de los emails de la lista de arriba que te suministra el comando gh api ...
usado anteriormente. Si haces eso, Kitt no podrá hacerle seguimiento a tu progreso. Cualquier correo que elijas se mostrará públicamente en internet. 💡 Selecciona la dirección @users.noreply.github.com
si no quieres que tu correo electrónico aparezca en los repositorios públicos a los que puedas contribuir.
Ahora cierra todas las ventanas de tu terminal que tengas abiertas por favor.
Instalando Python (con pyenv
)
Como estamos utilizando pyenv
para instalar y gestionar la versión de Python, necesitamos desinstalar conda
, otro gestor de paquetes que podrías tener en tu computadora si previamente instalaste Anaconda. De esta forma, evitaremos problemas con Python más adelante.
Chequea si tienes conda
instalado en tu computadora:
conda list
Si aparece zsh: command not found: conda
, puedes saltear la desinstalación de conda
e ir directo a la sección de Instalar pre-requisitos.
Instrucciones de desinstalación conda
- Instala el paquete Anaconda-Clean desde tu terminal y comienza la limpieza
conda install anaconda-clean
anaconda-clean --yes
- Remueve todos los directorios de Anaconda
rm -rf ~/anaconda2
rm -rf ~/anaconda3
rm -rf ~/.anaconda_backup
rm -rf ~/opt
- Elimina el directorio Anaconda de tu
.bash_profile
- Abre el archivo con
code ~/.bash_profile
- Si el archivo abre, busca la línea que coincida con el siguiente patrón
export PATH="/path/to/anaconda3/bin:$PATH"
y eliminala - Guarda el archivo con
CMD
+s
- Abre el archivo con
- Reinicia la terminal con
exec zsh
- Remueve la inicializaciópn de Anaconda de tu
.zshrc
:- Abre el archivo con
code ~/.zshrc
- Remueve las líneas de código desde
>>> conda initialize >>>
hasta<<< conda initialize <<<
- Abre el archivo con
Antes de instalar Python, por favor verifica la versión de tu extensión xz
con:
brew info xz
Debe ser superior a 5.2.0
. Si no es el caso, debes ejecutar lo siguiente:
sudo rm -rf /usr/local/opt/xz
brew upgrade
brew install xz
Luego ejecuta:
brew install readline
macOS viene con una versión vieja de Python que no queremos usar. Tal vez ya hayas instalado Anaconda u otro programa para utilizar Python y paquetes de Ciencia de Datos. Si es así, no pasa nada ya que haremos una configuración profesional de Python que te permitirá cambiar de versión cuando quieras al escribir python
en la terminal.
Primero instala pyenv
con el siguiente comando en la Terminal:
brew install pyenv
exec zsh
Si tu computadora tiene un procesador Apple Silicon (M1, M2, entre otros), expande el párrafo de abajo y sigue las indicaciones. En caso contrario, ignóralo.
👉 Setup para Apple Silicon 👈
Necesitamos agregar las siguientes variables de entorno para instalar python:
export LDFLAGS="-L/opt/homebrew/lib"; export CPPFLAGS="-I/opt/homebrew/include"
Instala la última versión estable de Python aceptada en el currículum de Le Wagon:
pyenv install 3.10.6
Este comando puede tomar un tiempo en ejecutarse. Esto es completamente normal. ¡No dudes en ayudar a los estudiantes que estén sentados cerca de ti!
🛠 Resolución de problemas
Si aparece un error durante la instalación de Python con pyenv
y relacionada con zlib
:
zipimport.ZipImportError: can't decompress data; zlib not available
Instala zlib
con lo siguiente:
brew install zlib
export LDFLAGS="-L/usr/local/opt/zlib/lib"
export CPPFLAGS="-I/usr/local/opt/zlib/include"
Luego trata de instalar Python nuevamente:
pyenv install 3.10.6
Es posible que aparezca otro error relacionado con bzip2
. Esto lo puedes ignorar y continuar al paso siguiente.
OK. Cuando este comando termine de ejecutarse, le diremos al sistema que use esta versión de Python por defecto. Esto se hace con:
pyenv global 3.10.6
exec zsh
Para verificar si esto ha funcionado, ejecuta python --version
. Si ves 3.10.6
, ¡todo está bien! Si no, pídele ayuda a un TA para resolver el problema por medio pyenv versions
y type -a python
(python
debería estar usando la versión .pyenv/shims
de primero).
Antes de instalar paquetes de Python, aislaremos la configuración del Bootcamp en un entorno virtual dedicado. Usaremos un plugin pyenv
llamado pyenv-virtualenv
.
Primero instala este plugin:
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
exec zsh
Crea el entorno virtual que usaremos durante todo el bootcamp:
pyenv virtualenv 3.10.6 lewagon
Define el entorno virtual con lo siguiente:
pyenv global lewagon
¡Genial! Ahora cada vez que queramos instalar un paquete Python, lo haremos en ese entorno.
Ahora que tenemos el ambiente virtual de lewagon
adecuado, es hora de instalarle algunos paquetes.
Primero, actualiza pip
, la herramienta para instalar Paquetes Python desde pypi.org. Ejecuta lo siguiente en la última terminal donde esté activado el virtualenv de lewagon
:
pip install --upgrade pip
Ahora instala algunos paquetes para las primeras semanas del programa:
Si tu computadora usa Apple Silicon, expande el párrafo de abajo y léelo. Si no es el caso, ignóralo.
👉 Configuración para Apple Silicon 👈
pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/apple_silicon.txt
Si tu computadora usa Apple Intel, expande el párrafo de abajo y léelo. Si no es el caso, ignóralo.
👉 Configuración para Apple Intel 👈
pip install -r https://raw.githubusercontent.com/lewagon/data-setup/master/specs/releases/apple_intel.txt
Mejora tu jupyter
notebooks con extensiones increíbles:
# install nbextensions
jupyter contrib nbextension install --user
jupyter nbextension enable toc2/main
jupyter nbextension enable collapsible_headings/main
jupyter nbextension enable spellchecker/main
jupyter nbextension enable code_prettify/code_prettify
Mejora la visualización del elemento details
para revelación de información en tus notebooks.
Abre custom/custom.css
en el directorio config:
cd $(jupyter --config-dir)
mkdir -p custom
touch custom/custom.css
code custom/custom.css
Edita custom.css
con la siguiente información:
summary {
cursor: pointer;
display:list-item;
}
summary::marker {
font-size: 1em;
}
Puedes cerrar VS Code.
Reinicia tu terminal:
exec zsh
Ahora verifica que puedas iniciar un servidor de notebook en tu máquina:
jupyter notebook
Tu navegador web debería abrir en una ventana jupyter
:
Haz clic en New
:
Debería abrirse una pestaña en un nuevo notebook:
Haz una revisión de las jupyter notebooks nbextensions
. Haz clic en Nbextensions
:
Deselecciona "disable configuration for nbextensions without explicit compatibility". Esto significa deshabilitar la configuración de nbextensions sin compatibilidad explícita. Luego verifica que al menos las nbextensions
marcadas en rojo estén habilitadas:
Puedes cerrar tu navegador web y luego cerrar el servidor jupyter con CTRL
+ C
.
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.
DDescarga e instala DBeaver, una herramienta poderosa, gratuita y de código abierto para conectar con cualquier base de datos, explorar su esquema e incluso hacer consultas SQL.
Docker es una plataforma abierta para el desarrollo, entrega y ejecución de aplicaciones.
Si ya tienes Docker instalado en tu máquina, por favor actualízalo con la versión más reciente
Ve a la página web de Docker y selecciona tu sistema operativo:
Luego sigue las instrucciones de configuración. Vas a instalar una aplicación de escritorio.
Cuando termines con eso, inicia Docker y verifica que funcione correctamente:
docker info
Deberías obtener lo siguiente:
Antes de configurar nuestra cuenta Google Cloud Platform vamos a configurar el CLI de gcloud
(una interfaz de línea de comando para Google Cloud Platform). Ejecuta el siguiente código y sigue las indicaciones de la terminal para actualizar tu $PATH y habilitar la finalización del comando del shell para el archivo .zshrc
:
brew install --cask google-cloud-sdk
Luego podrás ejecutar lo siguiente:
$(brew --prefix)/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/install.sh
GCP es una solución en la nube que usarás para colocar tus productos basados en Machine Learning en producción.
🚨 Si estás en el grupo de estudiantes del Bootcamp de Medio Tiempo, ¡IGNORA ESTA SECCIÓN POR AHORA! GCP ofrece $300 en créditos durante 3 meses, así que no es buena idea activar tu cuenta GCP demasiado pronto 🙅♂️
- Ve a Google Cloud y crea una cuenta si aún no tienes una
- En la consola de Cloud, en la lista de proyectos, selecciona o crea un proyecto Cloud
- Asígnale un nombre como
Wagon Bootcamp
por ejemplo - Verás que se creará un
ID
automáticamente para el proyecto e. g.wagon-bootcamp-123456
Abre las preferencias en tu cuenta GCP para facilitar el seguimiento de las instrucciones durante el bootcamp:
https://myaccount.google.com/language
Si el idioma de preferencia no es:
- English
- United States
Cámbialo a inglés:
- Haz clic en el logo edición (es una lapicera)
- Selecciona English
- Selecciona United States
- Haz clic en Select
Ahora conecta tu cuenta con tu tarjeta de crédito. Este paso es obligatorio para poder usar los servicios que suministra GCP. No te preocupes, podrás utilizar la mayoría de los servicios de GCP por medio de créditos gratuitos durante el bootcamp.
- Haz clic en Billing
- Haz clic en MANAGE BILLING ACCOUNTS
- Haz clic en ADD BILLING ACCOUNT
- Asígnale un nombre a tu cuenta de facturación, e. g.
My Billing Account
- Haz clic en "I have read..." y acepta los términos de uso
- Haz clic en CONTINUE
- Selecciona tu tipo de cuenta:
Individual
- Agrega tu nombre y dirección
Verás que tienes créditos gratuitos con un valor de "$300 a utilizar en los próximos 90 días".
- Haz clic en los detalles de la tarjeta
- Agrega la información de tu tarjeta de crédito
- Haz clic en START MY FREE TRIAL. Esto significa comenzar mi período de prueba.
Cuando termines, verifica que la cuenta de facturación esté conectada con tu proyecto GCP.
- Selecciona tu proyecto
- Ve a Billing
- Selecciona LINK A BILLING ACCOUNT
- Selecciona
My Billing Account
- Haz clic en SET ACCOUNT
Ahora deberías ver lo siguiente:
Free trial status: $300 credit and 91 days remaining - with a full account, you'll get unlimited access to all of Google Cloud Platform.
Esto significa Estado de período de prueba: crédito de $300 y 91 días para usarlo - con la full account, tendrás acceso ilimitado a todo lo que ofrece Google Cloud Platform.
👉 Si no tienes una tarjeta de crédito 👈
Si no tienes una tarjeta de crédito, puedes abrir una cuenta en Revolut. Revolut es una aplicación que funciona como un banco y que te permitirá crear una tarjeta de crédito virtual conectada a la dirección de facturación de tu smartphone.
Ignora este paso si ya tienes una tarjeta de crédito. Simplemente úsala para hacer la configuración.
Descarga la app Revolut o ve a revolut y sigue los pasos para descargar la app (introduce tu número de teléfono móvil y haz clic en Get Started).
- Abre la app Revolut
- Agrega tu número de teléfono móvil
- Agrega el código de verificación que recibiste por SMS
- La app te preguntará por tu país, dirección, primer y segundo nombre, fecha de nacimiento y el email
- La app también te pedirá tu profesión y una selfie
- La app te pedirá una foto de tu documento nacional de identidad o pasaporte
Cuando termines, selecciona el plan estándar (gratuito). No tienes que agregar la tarjeta a Apple pay, pedir que te envíen una tarjeta a tu domicilio ni tampoco agregar dinero a la cuenta.
Ahora tienes una tarjeta virtual que podrás usar para hacer la configuración de GCP.
En la vista principal de la app Revolut
- Haz clic en Ready to use
- Haz clic en the card
- Haz clic en Show card details
- Toma nota de la información de la tarjeta de crédito virtual y úsala para completar la configuración de GCP
👉 Si recibes un email de Google diciendo "Urgent: your billing account XXXXXX-XXXXXX-XXXXXX has been suspended" 👈
Esto puede pasar justo después de haber creado la cuenta en Revolut.
- Haz clic en PROCEED TO VERIFICATION
- Te pedirán que envíes una foto de tu tarjeta de crédito (solo los últimos 4 dígitos, nada más)
- Si ya has usado Revolut, puedes enviar una captura de pantalla de tu tarjeta de crédito virtual (no olvides quitar la fecha de vencimiento de la captura)
- Explica que estás haciendo el bootcamp de Le Wagon, que no tienes una tarjeta de crédito y que acabas de crear una cuenta en Revolut para poder configurar GCP para el bootcamp con una tarjeta de crédito virtual
Es posible que te validen la cuenta pero también es posible que te pidan más información en los próximos 30 minutos.
Cuando la cuenta sea validada recibirás un email diciendo lo siguiente: "Your Google Cloud Platform billing account XXXXXX-XXXXXX-XXXXXX has been fully reinstated and is ready to use.". Esto significa que tu cuenta Google Cloud Platform ha sido restablecida
- Asegúrate de que la facturación está habilitada para tu proyecto Google Cloud
ℹ️ Tienes un crédito de $300 para usar con recursos de Google Cloud. Esto será más que suficiente para el bootcamp.
- Habilita las APIs BigQuery y Compute Engine (Esto puede tomar varios minutos)
- Autentica el CLI de
gcloud
con la cuenta que usaste para GCP
gcloud auth login
- Inicia sesión en tu cuenta Google en la nueva pestaña que se abrió en tu navegador
- Lista la cuenta que tienes activa y verifica que el email que usaste para GCP está ahí
gcloud auth list
- Define tu proyecto actual (reemplaza
PROJECT_ID
con elID
de tu proyecto e.g.wagon-bootcamp-123456
)
gcloud config set project PROJECT_ID
- Lista la cuenta que tienes activa y tu proyecto actual y verifica que tu proyecto está ahí
gcloud config list
Como ya creaste una cuenta GCP account
y un project
(identificado por su PROJECT_ID
), vamos a configurar las acciones (llamadas API calls) que quieres que tu código ejecute.
🤔 ¿Por qué necesitamos una clave de cuenta de servicio?
Creaste una cuenta GCP
conectada a una tarjeta de crédito. Te facturarán de acuerdo al uso que les des a los recursos de Google Cloud Platform. El cargo se hará si utilizas algo después de que el período de prueba gratuito se haya terminado o si te excedes del límite de consumo que te permite dicho período.
En tu cuenta GCP
has creado un solo proyecto GCP
identificado por su PROJECT_ID
. Los proyectos GCP
te permiten organizar y monitorear la manera en que consumes los recursos GCP de forma más precisa. En este bootcamp solo crearemos un solo proyecto.
Ahora necesitamos una manera de saber qué recursos nuestro código podrá consumir dentro de un GCP project
. Nuestro código consume recursos GCP por medio de llamadas API.
Ya que las llamadas API no son gratuitas, es importante definir cuidadosamente cómo nuestro código las utilizará. Sin embargo, durante el bootcamp no habrá restricciones. Le permitiremos a nuestro código que utilice todas las API GCP sin restricciones.
Así como pueden haber varios proyectos asociados a una cuenta GCP, un proyecto puede estar compuesto de muchos servicios (cualquier paquete de código, sin importar su formato, que necesite utilizar llamadas a la API de GCP para cumplir con su propósito).
GCP exige que los servicios de los proyectos que usen llamadas API se registren en la plataforma y que se configuren sus credenciales por medio del acceso concedido a una service account
.
Por ahora solo tendremos que usar un solo servicio y crearemos la service account
correspondiente.
Ya que la service account es lo que identifica tu aplicación (y por ende tu cuenta de facturación GCP y, en última instancia, tu tarjeta de crédito), lo mejor es ser cuidadoso en los próximos pasos.
- Ve a la página de las cuentas de servicio
- Selecciona tu proyecto en la lista de proyectos recientes si te piden que
- Crees una cuenta de servicio:
- Haz clic en CREATE SERVICE ACCOUNT que significa crear une cuenta de servicio:
- Define un
Service account name
para esa cuenta. Esto significa Nombre de cuenta de servicio - Haz clic en CREATE AND CONTINUE que significa crear y continuar
- Haz clic en Select a role que significa selecciona un rol. Escoge
Quick access/Basic
luego Owner. Esto otorga acceso total a todos los recursos - Haz clic en CONTINUE
- Haz clic en DONE
- Descarga la 🔑 del archivo json de la cuenta de servicio:
- Haz clic en la cuenta de servicio recién creada
- Haz clic en KEYS
- Haz clic en ADD KEY y luego en Create new key
- Selecciona JSON y haz clic en CREATE
El navegador acaba de guardar la 🔑 del archivo json de la cuenta de servicio en tu carpeta de descargas (el nombre se le asigna según el nombre de la cuenta de servicio. Es algo como le-wagon-data-123456789abc.json
)
- Guarda el archivo json de la cuenta de servicio en un lugar que recuerdes. Por ejemplo:
/Users/MACOS_USERNAME/code/GITHUB_NICKNAME/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json
- Guarda la ruta absoluta al archivo
JSON
como una variable de entorno:
echo 'export GOOGLE_APPLICATION_CREDENTIALS=/path/to/the/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json' >> ~/.zshrc
Nota: cada vez que ejecutes este comando, agregará esta línea a tu archivo zshrc sin importar si la línea ya existe en el archivo. Si cometiste un error y necesitas arreglarlo, es preferible que abras el archivo y edites la línea!
Puedes hacerlo ejecutando
code ~/.zshrc
en la Terminal! 😄
ℹ️ ¿Cómo encontrar la ruta absoluta de un archivo?
Puedes arrastrar el archivo a tu terminal.Reinicia tu terminal y ejecuta lo siguiente:
echo $GOOGLE_APPLICATION_CREDENTIALS
Deberías obtener la siguiente información:
/some/absolute/path/to/your/gcp/SERVICE_ACCOUNT_JSON_FILE_CONTAINING_YOUR_SECRET_KEY.json
Ahora verifica si la ruta al archivo json de tu cuenta de servicio es el correcto:
cat $(echo $GOOGLE_APPLICATION_CREDENTIALS)
👉 Este comando debería mostrar el contenido del archivo json de tu cuenta de servicio. Si no es el caso, pídele ayuda a un TA 🙏
Tu código y utilidades ahora pueden acceder a los recursos de tu cuenta GCP.
Continuemos con los últimos pasos de la configuración...
- Lista las cuentas de servicio asociadas a tu cuenta activa y a tu proyecto actual
gcloud iam service-accounts list
- Recupera el email de la cuenta de servicio e. g.
SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
- Lista los roles de la cuenta de servicio desde la cli (reemplaza el PROJECT_ID y el SERVICE_ACCOUNT_EMAIL)
gcloud projects get-iam-policy PROJECT_ID \
--flatten="bindings[].members" \
--format='table(bindings.role)' \
--filter="bindings.members:SERVICE_ACCOUNT_EMAIL"
- Ahora deberías ver que tu cuenta de servicio tiene el rol de
roles/owner
Resolución de problemas
AccessDeniedException: 403 The project to be billed is associated with an absent billing account.
. Esto significa que el proyecto a facturar está asociado a una cuenta de facturación que no está habilitada- Asegúrate de habilitar la facturación para tu proyecto https://cloud.google.com/billing/docs/how-to/modify-project
🏁 Listo. ¡Has terminado la configuración de GCP!
Si no sabes que hacer, haz clic en este enlace. Si ya iniciaste sesión, puedes omitir esta sección. Si no, haz clic en Enter Kitt as a Student
. Esto significa iniciar sesión como estudiante. Si no tienes problemas para iniciar sesión, puedes omitir este paso. De lo contrario pídele a un profesor que te confirme si debiste haber recibido o si debes seguir las instrucciones de aquí abajo.
Registrate como alumni de Le Wagon yendo a kitt.lewagon.com/onboarding. Selecciona tu batch, inicia sesión con GitHub y completa toda la información que te piden.
Ahora tu profesor podrá validar que realmente eres parte del batch. Pídele que lo haga justo después de que hayas completado el formulario de registro.
Cuando el profesor haya aprobado tu perfil, ve a la bandeja de entrada de tu email. Deberías tener 2 nuevos emails:
- Uno de Slack, invitándote a la comunidad de los alumni de Le Wagon en slack (donde podrás chatear con tus compañeros y todos los demás alumni). Haz clic en Join y completa la información que te piden.
- Otro de GitHub, invitándote a
lewagon
team. Acéptala, de lo contrario no podrás acceder a las diapositivas de las clases.
Slack es una plataforma de comunicación popular en la industria tech.
Descarga la aplicación Slack e instálala.
Abre la aplicación e inicia sesión en lewagon-alumni
.
Asegúrate de subir una foto para tu perfil 👇
La idea es tener Slack abierto todo el día para compartir enlaces útiles / pedir ayuda / decidir dónde almorzar / etc.
Para asegurarte de que todo lo relacionado a videollamadas funcione bien, prueba tu cámara y tu micrófono:
- Abre la aplicación Slack
- Haz clic en tu foto de perfil en la esquina superior derecha
- Selecciona "Preferencias" en el menú.
- Haz clic en "Audio y vídeo" en la columna de la izquierda.
- Debajo de "Solución de problemas", haz clic en "Ejecutar una prueba de audio, vídeo y pantalla compartida". La prueba se abrirá en una nueva ventana.
- Comprueba que tus dispositivos preferidos de altavoz, micrófono y cámara aparecen en los menús desplegables y haz clic en "Iniciar prueba"
- Haz clic en el botón verde "Start test"
✔️ Cuando termine el test deberías ver mensajes de "Succeed" en verde por lo menos para tu micrófono y tu cámara. 👍
❌ Si no es el caso, contacta a un profesor.
¡También puedes instalar la aplicación Slack en tu smartphone e iniciar sesión en lewagon-alumni
!
Es imperativo proteger tu sesión con una contraseña. Si todavía no es el caso, ve a > System Settings... > Users & Groups
y cambia la contraseña de tu computadora. Luego ve a > System Settings... > Lock Screen
. Configura el sistema para que pida la contraseña cada 5 seconds
después de regresar de la opción suspender y cuando se active el protector de pantalla.
También puedes ir a > System Settings... > Desktop & Dock
y hacer clic en el botón Hot Corners...
abajo a la izquierda. Selecciona la opción donde al hacer clic en la esquina inferior derecha se active el protector de pantalla. De esa manera al dejar tu escritorio podrás bloquear tu pantalla rápidamente poniendo el cursor del ratón en la esquina inferior derecha. En 5 segundos tu Macbook se bloqueará y te pedirá la contraseña para volver a tu sesión.
A medida que te vayas convirtiendo en programador, entenderás que pierdes tiempo cuando quitas las manos del teclado para usar otra herramienta. Por esa razón es importante aprender a minimizar el uso del trackpad o del ratón. Aquí te mostramos algunos trucos para que lo hagas en macOS.
Ve a > System Settings... > Keyboard
. Coloca a Key repeat rate
en la posición más rápida (a la derecha) y a Delay until repeat
en la posición más corta (a la derecha).
Lee este script y selecciona algunas cosas que creas que serán útiles para ti. Por ejemplo, puedes escribir lo siguiente en la terminal:
# Expanding the save panel by default
defaults write NSGlobalDomain NSNavPanelExpandedStateForSaveMode -bool true
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint -bool true
defaults write NSGlobalDomain PMPrintingExpandedStateForPrint2 -bool true
# Save screenshots to the Desktop (or elsewhere)
defaults write com.apple.screencapture location "${HOME}/Desktop"
# etc..
Usarás frecuentemente casi todas las aplicaciones que has instalado hoy. ¡Anclémoslas a tu dock para que estén a solo un clic de ti!
Para ello, inicia la aplicación. Haz clic derecho en el ícono de la barra de tareas para hacer que aparezca el menú contextual (también llamado emergente) y selecciona "Options" y después "Keep in Dock".
Ancla lo siguiente:
- Tu terminal
- Tu explorador de archivos
- VS Code
- Tu navegador de Internet
- Slack
- Zoom
Si has terminado la configuración, te pedimos que preguntes si alguien necesita ayuda con la suya (macOS, Linux o Windows). Las primeras clases son a las 2pm. Hablaremos de la configuración que acabas de hacer y de Kitt.
Si no tienes mucha experiencia con git
y GitHub, por favor ve nuevamente el video de este workshop (puedes verlo a 1.25
de velocidad).
Si aún te queda tiempo, puedes esperar trabajar en este Kata de Tic-Tac-Toe mientras esperas la primera clase.