Halaman ini menjelaskan cara menggunakan Cloud Code untuk Pengembangan Jarak Jauh VS Code, yaitu untuk membuka codebase di container jarak jauh tempat aplikasi Anda di-build, di-debug, dan di-deploy. Ini menciptakan aplikasi yang portabel, apa pun OS mesin pengembangan Anda.
Prasyarat
Selain penyiapan yang dijelaskan dalam Menginstal ekstensi Cloud Code, instal paket ekstensi Remote Development VS Code.
Penyiapan
Untuk menyiapkan folder
.devcontainer
dengan file Dockerfile danDevcontainer.json
yang dikonfigurasi untuk bahasa yang Anda gunakan, klik Open a Remote Window > Add Dev Container Config Files. Atau, Anda dapat mengikuti langkah-langkah di bagian Pengembangan jarak jauh di Container.Setelah mengikuti petunjuk, ruang kerja Anda akan menyertakan:
Dockerfile — menentukan image container yang menyimpan alat developer untuk diinstal dalam container pengembangan jarak jauh.
Devcontainer.json
— Memberi petunjuk kepada ekstensi Alat Jarak Jauh VS Code tentang cara menjalankan penampung pengembangan jarak jauh.
Buka Dockerfile dan tambahkan petunjuk untuk menginstal Google Cloud CLI dan Skaffold. Untuk perintah terbaru, lihat panduan penginstalan.
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' \
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",
Setelah file Anda memiliki konten yang diperlukan, klik Open a Remote Window.
Contoh file devcontainer.json
File devcontainer.json
memberi tahu ekstensi Container Jarak Jauh port mana yang akan diekspos dalam container, cara memasang drive, dan ekstensi mana yang akan diinstal di container jarak jauh. Contoh file devcontainer.json
berikut menentukan bahwa ekstensi Container 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
- Baca dokumen Visual Studio tentang pengembangan jarak jauh menggunakan SSH.
- Ikuti tutorial untuk menjalankan Visual Studio Code di container docker menggunakan ekstensi container Dev.