1. Antes de comenzar
Cloud Shell es una herramienta de línea de comandos basada en el navegador que te permite acceder a los recursos de Google Cloud. Cloud Shell facilita la administración de tus proyectos y recursos de la consola de Cloud sin tener que instalar el SDK de Cloud ni otras herramientas en tu sistema.
Usarás Cloud Shell para compilar e iniciar una app de Spring Boot sin salir de tu navegador. Para ello, usarás el código de muestra de Compila una app con Spring Boot.
Requisitos previos
- Estar familiarizado con el lenguaje de programación y las herramientas de Java
- Conocimientos sobre editores de texto estándares de Linux, como Vim, Emacs y nano
Actividades
- Usa Cloud Shell.
- Crea una app de Spring Boot simple en Cloud Shell.
- Edita la app con el editor de código de Cloud Shell.
- Inicia la app desde Cloud Shell.
Requisitos
- Un proyecto de Google Cloud
- Un navegador, como Google Chrome
2. Configuración y requisitos
Configuración del entorno de autoaprendizaje
- Si aún no tienes una Cuenta de Google, debes crear una. Accede a la consola de Cloud y crea un proyecto nuevo.
Recuerda el ID del proyecto, un nombre único en todos los proyectos de Google Cloud (el nombre de la imagen ya está en uso y no funcionará para ti). Se mencionará más adelante en el codelab como PROJECT_ID
.
- A continuación, debes habilitar la facturación en la consola de Cloud para usar los recursos de Google Cloud. La ejecución del codelab no debería costar más que unos pocos dólares, pero podría ser más si decides usar más recursos o si los dejas ejecutándose.
Los usuarios nuevos de Google Cloud son aptos para una prueba gratuita de$300.
Cloud Shell
Esta máquina virtual basada en Debian está cargada con todas las herramientas de desarrollo que necesitarás. Ofrece un directorio principal persistente de 5 GB y se ejecuta en Google Cloud, lo que permite mejorar considerablemente el rendimiento de la red y la autenticación. Esto significa que todo lo que necesitarás para este Codelab es un navegador (sí, funciona en una Chromebook).
- Para activar Cloud Shell desde la consola de Cloud, solo haz clic en Activar Cloud Shell (el aprovisionamiento y la conexión al entorno debería llevar solo unos minutos).
Una vez conectado a Cloud Shell, debería ver que ya se autenticó y que el proyecto ya se configuró con tu PROJECT_ID
:
gcloud auth list
Resultado del comando
Credentialed accounts: - <myaccount>@<mydomain>.com (active)
gcloud config list project
Resultado del comando
[core] project = <PROJECT_ID>
Si, por algún motivo, el proyecto no está configurado, solo emite el siguiente comando:
gcloud config set project <PROJECT_ID>
Si no conoce su PROJECT_ID
, Observa el ID que usaste en los pasos de configuración o búscalo en el panel de la consola de Cloud:
Cloud Shell también configura algunas variables de entorno de forma predeterminada, lo que puede resultar útil cuando ejecutas comandos futuros.
echo $GOOGLE_CLOUD_PROJECT
Resultado del comando
<PROJECT_ID>
- Establece la zona predeterminada y la configuración del proyecto.
gcloud config set compute/zone us-central1-f
Puedes elegir una variedad de zonas diferentes. Para obtener más información, consulta Regiones y zonas.
3. Inicializa una nueva app de Spring Boot
Después de instalar la herramienta de línea de comandos de Spring Boot, puedes inicializar e iniciar un nuevo mensaje "Hello, World" aplicación web.
$ curl https://start.spring.io/starter.tgz \ -d dependencies=web \ -d type=maven-project \ -d baseDir=helloworld | tar -xzvf -
Esto crea un directorio nuevo con un proyecto de Maven nuevo, junto con pom.xml
de Maven, un wrapper de Maven y un punto de entrada de la app.
4. Cómo crear un servicio RESTful nuevo con el editor de código
- Para abrir el editor de código, haz clic en Abrir editor en el menú de Cloud Shell.
- Después de que se abra el editor, busca el archivo
helloworld/src/main/java/com/example/demo/DemoApplication.java
.
- Después de que se abra el código, crea un nuevo controlador RESTful para responder
Hello
. En el archivoDemoApplication.java
, agrega una nueva definición de claseHelloworld
además de la actual.
src/main/java/com/example/demo/DemoApplication.java
package com.example;
...
// Add the import
import org.springframework.web.bind.annotation.*;
@SpringBootApplication
public class DemoApplication {
...
}
// Add the controller
@RestController
class Helloworld {
@GetMapping("/")
public String greet() {
return "Hello!";
}
}
- Guarda el archivo.
5. Ejecuta la app de forma local
- Abre una terminal en el editor de código seleccionando
Terminal
y, luego,New Terminal
en el menú del editor. - Asegúrate de que
JAVA_HOME
esté configurado en la versión correcta de JDK:
$ export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64/
- Puedes iniciar la app de Spring Boot normalmente con el complemento de Spring Boot.
$ cd $HOME/helloworld $ ./mvnw -DskipTests spring-boot:run
- Una vez que se inicie la app, haz clic en Vista previa en la Web en la barra de herramientas de Cloud Shell y, luego, en Vista previa en el puerto 8080.
En tu navegador, se abrirá una pestaña y se conectará al servidor que iniciaste.
6. Felicitaciones
Aprendiste a compilar e iniciar una nueva app web de Java de Spring Boot directamente desde Cloud Shell.