Rumah  >  Artikel  >  pembangunan bahagian belakang  >  jengine automatic deployment golang

jengine automatic deployment golang

王林
王林asal
2023-05-13 12:48:38534semak imbas

Jengine ialah alat automasi baru muncul yang menjadikan aplikasi Golang lebih pantas dan mudah untuk digunakan. Artikel ini akan memperkenalkan proses Jengine menggunakan aplikasi Golang secara automatik.

I. Pasang Jengine

Mula-mula, anda perlu memasang Jengine dalam sistem anda. Jengine ialah aplikasi Go standard, jadi ia boleh dipasang melalui baris arahan berikut:

$ go get github.com/jengine-corp/jengine

II Konfigurasikan persekitaran penggunaan

Dalam Jengine, anda perlu mengkonfigurasi persekitaran penggunaan untuk penggunaan yang betul. permohonan anda. Konfigurasi dalam Jengine terbahagi terutamanya kepada dua kategori:

  1. Konfigurasi aplikasi
    Dalam konfigurasi ini, anda perlu menentukan kebergantungan yang diperlukan oleh aplikasi anda Jika aplikasi anda adalah aplikasi web, anda juga perlu menentukan nombor port dan nama hosnya.

    {
     "app": {
         "dependencies": [
             "github.com/labstack/echo",
             "github.com/jinzhu/gorm"
         ],
         "web": {
             "port": 8080,
             "host": "localhost"
         }
     }
    }
  2. Konfigurasi persekitaran penggunaan
    Dalam konfigurasi ini, anda perlu menentukan persekitaran penggunaan yang telah disediakan oleh pelayan anda. Sebagai contoh, anda boleh memilih untuk mengkonfigurasi pengguna yang melaksanakan penempatan dan menentukan laluan ke aplikasi.

    {
     "env": {
         "user": "deploy",
         "path": "/path/to/deploy"
     }
    }

III Cipta binaan

Jengine menyokong berbilang jenis binaan, seperti mencipta fail binari, imej Docker, AWS Lambda, penggunaan Kubernetes, dsb. Dalam artikel ini, kami akan mengambil mencipta fail binari sebagai contoh.

  1. Buat skrip binaan
    Skrip binaan ialah satu set perintah yang dijalankan semasa proses binaan. Sebagai contoh, kita boleh mencipta skrip binaan menggunakan arahan berikut.

    #!/bin/bash
    
    echo "Building..."
    go build -o myapp
  2. Tentukan binaan
    Dalam Jengine, setiap binaan perlu ditakrifkan menggunakan fail jengine.yml. Fail ini menyenaraikan fail konfigurasi, skrip binaan, dsb. yang perlu digunakan semasa binaan.

    config:
     - app.json
     - deploy.json
    
    builds:
     - name: linux
         type: binary
         os: linux
         arch: amd64
         script_file: build.sh

    Dalam fail ini, kami menyenaraikan dua fail konfigurasi (app.json dan deploy.json) dan satu binaan (linux). Kami mentakrifkan binaan ini sebagai binari binari yang akan dijalankan pada sistem pengendalian Linux.

IV. Melaksanakan Binaan

Kini kami bersedia untuk membina. Kami boleh menggunakan arahan berikut untuk menjalankan binaan:

$ jengine build linux

Jengine akan membaca fail jengine.yml dan membina aplikasi anda menggunakan maklumat dan skrip yang ditakrifkan di dalamnya.

V. Gunakan aplikasi

Selepas binaan selesai, anda perlu menggunakan aplikasi ke pelayan yang ditentukan. Jengin boleh memuat naik fail binari secara automatik ke pelayan dan melaksanakan operasi yang diperlukan.

  1. Pasang kunci SSH
    Mula-mula, kita perlu memasang kunci SSH untuk log masuk dari jauh ke pelayan dari komputer tempatan menggunakan Jengine. Kami boleh menjana kunci SSH menggunakan arahan berikut:

    $ ssh-keygen
  2. Kerahkan aplikasi
    Kami bersedia untuk menggunakan aplikasi ke dalam pelayan. Gunakan arahan berikut untuk memuat naik binari, tetapkannya sebagai boleh laku dan jalankannya.

    $ jengine deploy linux

Di atas adalah keseluruhan proses untuk menggunakan aplikasi Golang secara automatik menggunakan Jengine. Jengine bukan sahaja menjadikan proses penggunaan aplikasi lebih mudah dan lebih pantas, tetapi juga membina dan menguji aplikasi secara automatik. Jika anda seorang pembangun Golang, amat disyorkan anda mencuba Jengine untuk menambah baik proses pembangunan anda.

Atas ialah kandungan terperinci jengine automatic deployment golang. 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