Rumah > pembangunan bahagian belakang > Golang > Cara menggunakan aplikasi web dengan Docker+Golang

Cara menggunakan aplikasi web dengan Docker+Golang

PHPz
Lepaskan: 2023-04-06 11:00:24
asal
666 orang telah melayarinya

Docker dan Golang ialah dua teknologi terhangat hari ini, sebagai wakil teknologi kontena, dapat merealisasikan penggunaan dan pengurusan aplikasi yang mudah; . Artikel ini akan memperkenalkan cara menggunakan Docker dan Golang untuk melaksanakan penggunaan aplikasi web.

1. Pasang Docker

Pemasangan Docker adalah sangat mudah. ​​Anda boleh memuat turun pakej pemasangan platform yang sepadan dari tapak web rasmi untuk pemasangan. Selepas pemasangan selesai, anda boleh mengesahkan sama ada pemasangan berjaya dengan menjalankan arahan docker.

2. Tulis aplikasi Web Golang

Mari tulis aplikasi Web Golang yang ringkas Kodnya adalah seperti berikut:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, Docker and Golang!")
}
Salin selepas log masuk

Program ini adalah HTTP yang ringkas. mendengar port 8080 dan bertindak balas kepada permintaan pelanggan melalui fungsi pengendali. Sekarang kita boleh menjalankan program ini secara tempatan dan menggunakan pelayar untuk mengakses http://localhost:8080 Kita boleh melihat ayat yang dipaparkan pada halaman: "Hello, Docker dan Golang!".

3. Cipta imej Docker

Dalam Docker, imej mengandungi semua kebergantungan dan fail aplikasi dan boleh dijalankan pada mana-mana bekas Docker. Kita perlu mencipta imej Docker untuk membungkus aplikasi Golang supaya ia boleh dijalankan pada mana-mana bekas Docker.

Pertama, kita perlu mencipta fail bernama Dockerfile dan mentakrifkan kandungan berikut di dalamnya:

FROM golang:alpine
COPY . /app
WORKDIR /app
RUN go build -o main .
CMD ["/app/main"]
Salin selepas log masuk

Dockerfile ini mentakrifkan bekas Docker berdasarkan imej alpine dan menambah aplikasi kami ialah disalin ke direktori /app. Kemudian laksanakan arahan go build untuk menyusun aplikasi kami dan namakan fail binari yang dikompilasi utama. Akhir sekali, gunakan arahan CMD untuk menentukan arahan yang akan dipanggil semasa bekas sedang berjalan, iaitu, untuk menjalankan aplikasi kami.

Seterusnya, kita perlu menggunakan arahan binaan docker untuk mencipta imej Docker Perintahnya adalah seperti berikut:

docker build -t my-golang-app .
Salin selepas log masuk

Arahan ini akan melaksanakan fail Dockerfile dalam direktori dan nama semasa. imej yang dijana sebagai my-golang-app.

4. Jalankan bekas Docker

Sekarang, kami sudah mempunyai imej Docker bernama my-golang-app :

docker run -p 8080:8080 my-golang-app
Salin selepas log masuk

Arahan ini akan memulakan bekas Docker pada mesin semasa dan memetakan port 8080 dalam bekas ke port 8080 hos. Kini, kita boleh mengakses http://localhost:8080 dalam penyemak imbas, dan kita boleh melihat ayat yang dipaparkan pada halaman: "Hello, Docker dan Golang!", menunjukkan bahawa program kami telah berjaya dijalankan dalam bekas Docker.

5. Ringkasan

Artikel ini memperkenalkan cara menggunakan Docker dan Golang untuk menggunakan aplikasi web, termasuk mencipta imej Docker dan menjalankan bekas Docker. Saya percaya bahawa melalui pengenalan artikel ini, pembaca telah memahami cara membungkus aplikasi Golang sebagai imej Docker dan menjalankan program pada mana-mana bekas Docker.

Atas ialah kandungan terperinci Cara menggunakan aplikasi web dengan Docker+Golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan