Cloud Shell'den Spring Boot Java uygulaması derleme ve başlatma

Cloud Shell, Google Cloud kaynaklarına erişmenizi sağlayan tarayıcı tabanlı bir komut satırı aracıdır. Cloud Shell, Cloud SDK'yı ve diğer araçları sisteminize yüklemenize gerek kalmadan Cloud Console projelerinizi ve kaynaklarınızı yönetmenizi kolaylaştırır.

Cloud Shell'i kullanarak tarayıcınızdan hiç ayrılmadan Spring Boot uygulaması oluşturup başlatacaksınız. Bunu yapmak için Building an App with Spring Boot (Spring Boot ile Uygulama Oluşturma) bölümündeki örnek kodu kullanacaksınız.

Ön koşullar

  • Java programlama dili ve araçları hakkında bilgi sahibi olma
  • Vim, Emacs ve nano gibi standart Linux metin düzenleyicileri hakkında bilgi sahibi olmanız gerekir.

Yapacaklarınız

  • Cloud Shell'i kullanın.
  • Cloud Shell'de basit bir Spring Boot uygulaması oluşturun.
  • Cloud Shell'deki kod düzenleyiciyi kullanarak uygulamayı düzenleyin.
  • Uygulamayı Cloud Shell'den başlatın.

Gerekenler

Kendi hızınızda ortam kurulumu

  1. Henüz bir Google Hesabınız yoksa oluşturmanız gerekir. Cloud Console'da oturum açın ve yeni bir proje oluşturun.

Screenshot from 2016-02-10 12:45:26.png

Proje kimliğini unutmayın. Bu kimlik, tüm Google Cloud projelerinde benzersiz bir addır (resimdeki ad zaten alınmış olduğundan sizin için çalışmaz). Bu değişken, codelab'in ilerleyen bölümlerinde PROJECT_ID olarak adlandırılacaktır.

  1. Ardından, Google Cloud kaynaklarını kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i tamamlamak size birkaç dolardan fazla maliyet getirmemelidir. Ancak daha fazla kaynak kullanmaya karar verirseniz veya kaynakları çalışır durumda bırakırsanız maliyet daha yüksek olabilir.

Google Cloud'un yeni kullanıcıları 300 ABD doları değerinde ücretsiz deneme sürümünden yararlanabilir.

Cloud Shell

Bu Debian tabanlı sanal makine, ihtiyaç duyacağınız tüm geliştirme araçlarını içerir. 5 GB boyutunda kalıcı bir ana dizin sunar ve Google Cloud'da çalışır. Bu sayede ağ performansı ve kimlik doğrulama önemli ölçüde iyileştirilir. Bu nedenle, bu codelab için ihtiyacınız olan tek şey bir tarayıcıdır (Chromebook'ta da çalışır).

  1. Cloud Shell'i Cloud Console'dan etkinleştirmek için Cloud Shell'i etkinleştir'i tıklamanız yeterlidir(ortamın sağlanması ve bağlantının kurulması yalnızca birkaç dakika sürer).

Screen Shot 2017-06-14 at 10.13.43 PM.png

Cloud Shell'e bağlandıktan sonra kimliğinizin doğrulandığını ve projenin PROJECT_ID olarak ayarlandığını görürsünüz.

gcloud auth list

Komut çıkışı

Credentialed accounts:
 - <myaccount>@<mydomain>.com (active)
gcloud config list project

Komut çıkışı

[core]
project = <PROJECT_ID>

Cloud Shell, gelecekteki komutları çalıştırırken faydalı olabilecek bazı ortam değişkenlerini de varsayılan olarak ayarlar.

echo $GOOGLE_CLOUD_PROJECT

Komut çıkışı

<PROJECT_ID>

Herhangi bir nedenle proje ayarlanmamışsa şu komutu vermeniz yeterlidir:

gcloud config set project <PROJECT_ID>

PROJECT_ID cihazınızı mı arıyorsunuz? Kurulum adımlarında hangi kimliği kullandığınızı kontrol edin veya Cloud Console kontrol panelinde arayın.

Project_ID.png

  1. Son olarak, varsayılan alt bölgeyi ve proje yapılandırmasını ayarlayın.
gcloud config set compute/zone us-central1-f

Çeşitli bölgeler arasından seçim yapabilirsiniz. Daha fazla bilgi için Bölgeler ve Alt Bölgeler başlıklı makaleyi inceleyin.

Spring Boot komut satırı aracı yüklendikten sonra yeni bir "Hello, World" web uygulamasını başlatabilir ve bootstrap edebilirsiniz.

$ curl https://start.spring.io/starter.tgz \
  -d dependencies=web -d baseDir=helloworld | tar -xzvf -

Bu işlem, Maven'ın pom.xml, Maven sarmalayıcısı ve bir uygulama giriş noktası ile birlikte yeni bir Maven projesi içeren yeni bir dizin oluşturur.

  1. Cloud Shell menüsünde Launch editor 'ı (Düzenleyiciyi başlat) tıklayarak kod düzenleyiciyi açın.
  2. Düzenleyici açıldıktan sonra helloworld/src/main/java/com/example/demo/DemoApplication.java dosyasını bulun.

  1. Kod açıldıktan sonra yanıt vermek için yeni bir RESTful denetleyici oluşturun Hello. DemoApplication.java dosyasında, mevcut tanıma ek olarak yeni bir Helloworld sınıf tanımı ekleyin.

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!";
        }
}
  1. Dosyayı kaydedin.
  1. Spring Boot uygulamasını Spring Boot eklentisiyle normal şekilde başlatabilirsiniz.
$ cd $HOME/helloworld
$ ./mvnw -DskipTests spring-boot:run

  1. Uygulama başladıktan sonra Cloud Shell araç çubuğunda Web Önizlemesi'ni , ardından 8080 bağlantı noktasında önizle'yi tıklayın.

Tarayıcınızda bir sekme açılır ve başlattığınız sunucuya bağlanır.

Doğrudan Cloud Shell'den yeni bir Spring Boot Java web uygulaması oluşturmayı ve başlatmayı öğrendiniz.

Daha fazla bilgi