Mengembangkan aplikasi Kubernetes dengan pengembangan jarak jauh

Halaman ini menjelaskan cara menggunakan Cloud Code untuk VS Code Pengembangan Jarak Jauh, yaitu, untuk membuka codebase di penampung jarak jauh tempat aplikasi Anda di-build, di-debug, dan di-deploy. Tindakan ini akan membuat aplikasi yang portabel, terlepas dari OS mesin pengembangan Anda.

Prasyarat

Selain penyiapan yang dijelaskan dalam Menginstal ekstensi Cloud Code, instal paket ekstensi VS Code Pengembangan Jarak Jauh.

Penyiapan

  1. Untuk menyiapkan folder .devcontainer dengan file Dockerfile dan Devcontainer.json yang dikonfigurasi untuk bahasa yang Anda gunakan, klik Membuka jendela jarak jauh Buka Jendela Jarak Jauh > Tambahkan File Konfigurasi Penampung Dev. Atau, Anda dapat mengikuti langkah-langkah dalam Pengembangan jarak jauh di Penampung.

    Setelah Anda mengikuti petunjuk, ruang kerja Anda akan menyertakan:

    • Dockerfile — menentukan image container yang menyimpan alat developer untuk diinstal di container pengembangan jarak jauh.

    • Devcontainer.json — Memberi petunjuk kepada ekstensi VS Code Remote Tools tentang cara menjalankan penampung pengembangan jarak jauh.

  2. Buka Dockerfile dan tambahkan petunjuk untuk menginstal Google Cloud CLI dan Skaffold. Untuk perintah terbaru, lihat panduan penginstalan.

  3. Di Dockerfile, tambahkan petunjuk untuk menyalin konfigurasi gcloud CLI dan Skaffold localhost sebelum perintah >> $HOME/.bashrc. Atau, Anda dapat menulis ulang perintah untuk menginstal gcloud CLI dan Skaffold.

    # Copy localhost's ~/.kube/config file into the container and swap out localhost
    # for host.docker.internal whenever a new shell starts to keep them in sync.
    RUN echo '\n\
    if [ "$SYNC_LOCALHOST_KUBECONFIG" == "true" ]; then\n\
      mkdir -p $HOME/.kube\n\
      cp -r $HOME/.kube-localhost/* $HOME/.kube\n\
      sed -i -e "s/localhost/host.docker.internal/g" $HOME/.kube/config\n\
    \n\
    fi' \
    if [ "$SYNC_LOCALHOST_GCLOUD" == "true" ]; then\n\
     mkdir -p $HOME/.config/gcloud\n\
     cp -r $HOME/.gcloud-localhost/* $HOME/.config/gcloud\n\
    \n\
    fi' \
    
  4. Buka file Devcontainer.json dan tambahkan argumen run berikut untuk menyalin konfigurasi gcloud CLI dan Skaffold dari localhost:

      "-e", "SYNC_LOCALHOST_KUBECONFIG=true",
      "-e", "SYNC_LOCALHOST_GCLOUD=true",
    
  5. Setelah file Anda memiliki konten yang diperlukan, klik Buka Jendela Jarak Jauh.

Contoh file devcontainer.json

File devcontainer.json memberi tahu ekstensi Penampung Jarak Jauh port mana yang akan ditampilkan di penampung, cara memasang drive, dan ekstensi mana yang akan diinstal di penampung jarak jauh. Contoh file devcontainer.json berikut menentukan bahwa ekstensi Penampung Jarak Jauh harus menginstal ekstensi Cloud Code untuk VS Code:

   "runArgs": [
         "-v","/var/run/docker.sock:/var/run/docker.sock",
         "--mount", "type=bind,source=${env:HOME}${env:USERPROFILE}/.kube,target=/root/.kube-localhost",
         "--mount", "type=bind,source=${env:HOME}${env:USERPROFILE}/.config/gcloud,target=/root/.gcloud-localhost",
         "-e", "SYNC_LOCALHOST_KUBECONFIG=true",
         "-e", "SYNC_LOCALHOST_GCLOUD=true",
         "--cap-add=SYS_PTRACE", "--security-opt", "seccomp=unconfined"
      ]

Langkah selanjutnya

Dapatkan Dukungan

Untuk mengirim masukan, laporkan masalah di GitHub, atau ajukan pertanyaan di Stack Overflow.