Dengan pembangunan berterusan teknologi Internet, semakin banyak perusahaan dan pasukan menggunakan seni bina perkhidmatan mikro untuk membangun dan menggunakan aplikasi. Antaranya, menggunakan bekas Docker untuk penggunaan dan pengurusan aplikasi adalah cara yang semakin popular. Bagi pembangun yang menggunakan bahasa Golang untuk membangunkan aplikasi web, rangka kerja Revel ialah rangka kerja web yang ringkas, mudah digunakan, cekap dan stabil yang boleh digunakan dengan mudah bersama-sama dengan bekas Docker.
Artikel ini akan memperkenalkan proses membina aplikasi web menggunakan rangka kerja Revel dan bekas Docker. Secara khusus, ia akan bermula dengan memasang dan mengkonfigurasi persekitaran, langkah demi langkah memperkenalkan cara mencipta aplikasi Revel dan imej Docker, dan akhirnya menunjukkan cara menggunakan bekas Docker untuk menjalankan dan menggunakan aplikasi.
Mula-mula, pasang dan konfigurasikan persekitaran Golang dan Docker. Untuk pemasangan dan konfigurasi Golang, sila rujuk dokumentasi rasmi. Untuk memuat turun dan memasang Docker, sila rujuk https://docs.docker.com/engine/install/. Selain itu, anda boleh menggunakan Docker Desktop untuk memudahkan pemasangan dan konfigurasi Docker, yang menyokong sistem pengendalian Windows, macOS dan Linux. Untuk butiran, sila rujuk https://www.docker.com/products/docker-desktop.
Seterusnya, anda perlu mencipta aplikasi Revel baharu. Anda boleh menggunakan alat Revel CLI untuk membuat aplikasi dengan cepat Perintah khusus adalah seperti berikut:
$ go get github.com/revel/revel $ go get github.com/revel/cmd/revel $ revel new myapp
Antaranya, baris arahan pertama akan mendapat kod utama rangka kerja Revel, dan baris kedua bagi. arahan akan mendapat alat Revel CLI. Baris arahan ketiga akan mencipta aplikasi Revel baharu bernama myapp menggunakan alat Revel CLI. Apabila membuat aplikasi, anda boleh memilih daripada templat aplikasi yang berbeza seperti RESTful API, Aplikasi Web, Pelayan WebSocket, dsb.
Selepas mencipta aplikasi, anda boleh melihat struktur aplikasi dalam direktori myapp. Fail utama termasuk direktori aplikasi (mengandungi logik utama aplikasi), direktori conf (mengandungi fail konfigurasi aplikasi) dan direktori awam (mengandungi sumber seperti fail statik).
Selepas melengkapkan penciptaan aplikasi Revel, anda perlu membungkus aplikasi ke dalam imej Docker untuk memudahkan penggunaan dan berjalan dalam persekitaran yang berbeza.
Pertama, anda perlu mencipta fail bernama Dockerfile dalam direktori myapp dan mentakrifkan arahan binaan imej Docker di dalamnya. Berikut ialah contoh fail Docker yang mudah:
FROM golang:alpine MAINTAINER xxx@xxx.com RUN apk add --no-cache git WORKDIR /go/src/app COPY . . RUN go get -d -v ./... RUN go install -v ./... CMD ["app"]
Prinsip fail Dockerfile di atas ialah memuat turun versi alpine Golang, dan kemudian menyalin semua fail dalam direktori program myapp ke direktori aplikasi yang dinamakan. Seterusnya, perpustakaan bergantung akan dimuat turun dan dipasang, dan aplikasi akan disusun dan dipasang dalam direktori /bin. Akhir sekali, gunakan arahan CMD untuk menjalankan aplikasi myapp.
Seterusnya, gunakan arahan berikut untuk membina imej Docker:
$ docker build -t myapp .
Antaranya, "-t" menentukan label imej Docker, di sini ditetapkan kepada "myapp", yang bermaksud membina aplikasi myapp Imej Docker. Ambil perhatian bahawa kerana arahan ini menggunakan Dockerfile dalam direktori semasa untuk membina imej, anda perlu menjalankan arahan ini dalam direktori myapp.
Selepas melengkapkan pembinaan imej Docker, anda perlu menjalankan dan menggunakan aplikasi.
Pertama, anda boleh menggunakan arahan berikut untuk menjalankan bekas Docker:
$ docker run -p 9000:9000 myapp
Antaranya, "-p" menentukan pemetaan antara port kontena dan port hos Di sini, bekas port 9000 dipetakan ke port hos 9000 . Selepas menggunakan arahan di atas, anda sepatutnya boleh mengakses aplikasi dengan mengakses http://localhost:9000 dalam pelayar.
Untuk memudahkan penggunaan dan pengurusan aplikasi, anda boleh menggunakan Docker Compose untuk mengurus berbilang bekas. Mula-mula, anda perlu mencipta fail bernama docker-compose.yml dan mentakrifkan maklumat perkhidmatan yang berkaitan di dalamnya. Berikut ialah contoh mudah:
version: '3' services: myapp: build: . container_name: myapp ports: - "9000:9000"
Dalam contoh di atas, perkhidmatan myapp mengandungi arahan membina imej Docker, nama kontena Docker dan maklumat pemetaan port. Anda boleh menggunakan arahan berikut untuk memulakan dan menghentikan aplikasi:
$ docker-compose up $ docker-compose down
Perintah Docker-compose up akan memulakan semua perkhidmatan yang ditentukan, manakala arahan Docker-compose down akan menghentikan semua perkhidmatan dan memadamkan bekas, rangkaian dan sumber lain.
Ringkasan
Artikel ini memperkenalkan proses membina aplikasi menggunakan rangka kerja Web Golang Revel dan Docker. Khususnya, anda perlu memasang dan mengkonfigurasi persekitaran Golang dan Docker terlebih dahulu, kemudian gunakan alat Revel CLI untuk mencipta aplikasi Revel baharu, kedua membungkus aplikasi itu ke dalam imej Docker, dan akhirnya menggunakan bekas Docker untuk menjalankan dan menggunakan aplikasi. Melalui langkah di atas, aplikasi Revel boleh digunakan dan dijalankan dengan mudah, dan digabungkan dengan bekas Docker, aplikasi boleh diurus dan digunakan dengan lebih cekap.
Atas ialah kandungan terperinci Bina aplikasi menggunakan rangka kerja web Golang rangka kerja Revel dan Docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!