Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bekas Docker dalam bahasa Go dibangunkan secara tempatan

Bekas Docker dalam bahasa Go dibangunkan secara tempatan

WBOY
WBOYasal
2023-06-01 19:31:41992semak imbas

Bahasa Go ialah salah satu bahasa yang paling popular untuk pembangunan Internet hari ini Dalam pembangunan harian, selalunya perlu menggunakan bekas Docker untuk membina persekitaran pembangunan tempatan untuk perkhidmatan. Artikel ini akan menerangkan secara ringkas aplikasi bekas Docker dalam pembangunan bahasa Go.

  1. Pengenalan kepada bekas Docker

Docker ialah teknologi maya yang boleh membantu pembangun menyediakan persekitaran pembangunan dengan pantas, membina imej, menggunakan aplikasi, dsb. secara tempatan, dengan itu mengelakkan Inkonsistensi dalam pembangunan, ujian, penggunaan, dsb. disebabkan oleh persekitaran yang berbeza.

Bekas Docker ialah salah satu konsep teras Docker, iaitu proses terpencil yang dimulakan berdasarkan imej Docker yang boleh menjalankan aplikasi. Setiap bekas mengandungi sistem fail lengkap, proses aplikasi, susunan rangkaian, dsb., yang diasingkan daripada hos, tetapi boleh berkongsi kernel dengan hos.

  1. Aplikasi kontena Docker dalam pembangunan bahasa Go

Dalam pembangunan bahasa Go, kami biasanya menggunakan dua jenis aplikasi kontena Docker berikut:

(1 ) Bina persekitaran pembangunan setempat

Apabila membangunkan aplikasi bahasa Go, kita perlu menggunakan persekitaran pembangunan untuk membina dan menguji program Persekitaran pembangunan biasanya termasuk penyusun bahasa Go, editor kod, dsb. Menggunakan bekas Docker boleh mengelakkan perbezaan persekitaran yang disebabkan oleh sistem pengendalian yang berbeza, versi yang berbeza dan faktor lain.

Sebagai contoh, apabila membangunkan aplikasi bahasa Go secara setempat, kita boleh menggunakan arahan berikut untuk mencipta bekas yang mengandungi Go1.16:

docker run -it --rm -v "$PWD":/go/src/myapp -w /go/src/myapp golang:1.16 bash

Terangkan:

  • -it bermaksud mencipta bekas interaktif, iaitu, memulakan cangkerang.
  • --rm bermakna bekas itu akan dipadamkan secara automatik apabila ia keluar.
  • -v "$PWD":/go/src/myapp bermaksud memetakan direktori kerja semasa tempatan ke direktori /go/src/myapp bekas.
  • -w /go/src/myapp bermaksud menetapkan direktori kerja bekas ke direktori /go/src/myapp.
  • golang:1.16 bermaksud menggunakan imej golang:1.16 untuk memulakan bekas.
  • bash bermaksud menggunakan bash shell.

Seperti yang anda lihat, menggunakan bekas Docker untuk memulakan persekitaran pembangunan bahasa Go adalah sangat mudah dan mudah digunakan. Kami hanya perlu memuat turun imej dan kemudian memulakan bekas melalui arahan.

(2) Menggunakan aplikasi bahasa Go

Apabila menggunakan aplikasi bahasa Go, kita perlu mempertimbangkan perbezaan persekitaran, kehilangan perpustakaan bergantung, ralat masa jalan dan isu lain. Menggunakan bekas Docker boleh menjadikan aplikasi kami lebih stabil dan boleh dipercayai apabila digunakan.

Sebagai contoh, apabila menggunakan aplikasi bahasa Go, kita boleh menggunakan arahan berikut untuk mencipta bekas Docker berasaskan alpine, kemudian menyusun aplikasi ke dalam bekas dan menjalankan aplikasi dalam bekas:

docker run --rm -v "$PWD":/app -w /app golang:1.16-alpine go build -v

docker run --rm -v "$PWD":/app -w /app -p 8080:8080 golang:1.16-alpine ./myapp

Terangkan:

  • docker run --rm -v "$PWD":/app -w /app golang:1.16-alpine go build -v bermaksud mencipta bekas Docker berasaskan alpine, memetakan direktori semasa ke direktori /app bekas, dan kemudian menyusun aplikasi myapp ke dalam bekas .
  • docker run --rm -v "$PWD":/app -w /app -p 8080:8080 golang:1.16-alpine ./myapp bermaksud mencipta bekas Docker berasaskan alpine, memetakan direktori semasa ke direktori /app bekas, kemudian menjalankan aplikasi myapp dan memetakan port 8080 kontena ke port 8080 hos.
  1. Ringkasan

Melalui pengenalan di atas, kita dapat melihat bahawa dalam pembangunan bahasa Go, bekas Docker boleh membantu kami Membina, menguji dengan lebih pantas, mudah dan lebih dipercayai , dan gunakan aplikasi kami. Walaupun bekas Docker mempunyai beberapa batasan, seperti aplikasi tidak boleh mengakses hos secara langsung, kami boleh menyelesaikan masalah ini melalui teknologi seperti mount. Saya percaya bahawa menggunakan bekas Docker akan menjadi arus perdana pembangunan bahasa Go pada masa hadapan.

Atas ialah kandungan terperinci Bekas Docker dalam bahasa Go dibangunkan secara tempatan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn