Cara Memasang Golang 1.8 di Ubuntu 16.04
Go (Golang) adalah bahasa pemrograman modern yang dikembangkan di Google, dan berfokus pada kesederhanaan dan keamanan. Ini telah menjadi bahasa populer yang digunakan untuk server-sid
Panduan ini menjelaskan cara membuat Penyimpanan Objek Vultr di aplikasi Go Anda dengan klien Vultr Go . Penyimpanan Objek Vultr kompatibel dengan S3 API.
The Vultr Go klien digunakan untuk berinteraksi dengan API Vultr . API Vultr memungkinkan Anda untuk mengontrol sumber daya yang terkait dengan akun Anda, termasuk Penyimpanan Objek Vultr. Informasi terperinci tentang klien Vultr Go tersedia di artikel ini .
Buat folder di direktori saat ini.
$ mkdir vultr_demo
Masukkan folder baru.
$ cd vultr_demo
$ go mod init vultr_demo
$ go get github.com/vultr/govultr
Setel variabel lingkungan VULTR_API_KEY ke kunci API Anda. Kunci API Anda ditemukan di sini: https://my.vultr.com/settings/#settingsapi
Peringatan: Lindungi kunci API Anda seperti Anda akan melindungi kata sandi Anda. Kunci API memiliki akses ke seluruh akun Anda, termasuk penagihan, server, dan penyimpanan.
Misalnya, di Ubuntu Linux, tambahkan baris ini ke ~/.profile
.
export VULTR_API_KEY=YOUR_API_KEY_HERE
Rekatkan masing-masing fragmen kode berikut ke dalam file baru bernama main.go
. File lengkap juga tersedia untuk diunduh .
Atur paket dan impor pustaka yang diperlukan.
package main
import (
"context"
"log"
"os"
"time"
"github.com/vultr/govultr"
)
Mulai main()
fungsinya.
func main() {
Baca variabel lingkungan kunci API.
var (
// Get our Vultr API Key from an environment variable.
VultrAPIKey = os.Getenv("VULTR_API_KEY")
)
Buat klien Vultr.
// Create a Vultr client with our API Key.
vultr := govultr.NewClient(nil, VultrAPIKey)
Tentukan lokasi untuk membuat Object Storage. Ambil lokasi cluster, verifikasi ada, pilih satu cluster, dan tampilkan.
// Find the clusters we can create our Object Storage in.
clusters, err := vultr.ObjectStorage.ListCluster(ctx)
if err != nil {
log.Fatalf("Error listing clusters: %s", err)
}
// Verify there's at least one cluster.
if len(clusters) < 1 {
log.Fatal("Could not find any clusters to create our Object Storage")
}
// Choose the first cluster, and print it.
cluster := clusters[0]
log.Printf("Chosen cluster: %+v", cluster)
Buat Object Storage di cluster yang dipilih.
// Create our Object Storage in the first cluster listed with our custom label.
label := "my-object-storage"
storageID, err := vultr.ObjectStorage.Create(ctx, cluster.ObjectStoreClusterID, label)
if err != nil {
log.Fatalf("Error creating storage: %s", err)
}
log.Printf("Created our Object Storage with the ID: %d", storageID.ID)
Tunggu hingga Object Storage aktif.
var storage govultr.ObjectStorage
// Query the API every five seconds to until our server is ready.
for {
// List all of the Object Storage containers with our label and include the S3 credentials.
list, err := vultr.ObjectStorage.List(ctx, &govultr.ObjectListOptions{
Label: label,
IncludeS3: true,
})
if err != nil {
log.Fatalf("Error listing storage with label \"%s\": %s", label, err)
}
// Make sure we found one (and only one) Object Storage container.
if len(list) != 1 {
log.Fatalf("%d object storage containers exist with the label \"%s\"; we need 1", len(list), label)
}
storage = list[0]
// If the server is active, break out of this loop.
if storage.Status == "active" {
break
}
// Wait for five seconds before querying the API again.
log.Printf("The Object Storage's status is currently \"%s\", waiting for another five seconds to check if it's \"active\".", storage.Status)
time.Sleep(time.Second * 5)
}
Menampilkan nama titik akhir dan kredensial koneksi.
// Print the information of our new Object Storage.
log.Print("Successfully created and listed our Object Storage!")
log.Printf("Object Storage: %+v", storage)
// We also have S3 credentials here now, so we could open an S3 compatible client.
log.Printf("S3 credentials: %s - %s - %s", storage.S3Hostname, storage.S3AccessKey, storage.S3SecretKey)
Akhiri fungsi utama.
// end main()
}
Simpan dan jalankan main.go
file yang sudah selesai .
go run main.go
2020/03/03 13:05:48 Chosen cluster: {ObjectStoreClusterID:2 RegionID:1 Location:New Jersey Hostname:ewr1.vultrobjects.com Deploy:yes}
2020/03/03 13:05:48 Created our Object Storage with the ID: xxxxxxxx
2020/03/03 13:05:49 The Object Storage's status is currently pending, waiting for another five seconds to check if it's active.
2020/03/03 13:06:06 Object Storage: {ID:34214512 DateCreated:2020-03-03 13:05:47 ObjectStoreClusterID:2 RegionID:1 Location:New Jersey Label:my-object-storage Status:active S3Keys:{S3Hostname:ewr1.vultrobjects.com S3AccessKey:[REDACTED ACCESS KEY] S3SecretKey:[REDACTED SECRET KEY]}}
2020/03/03 13:06:06 S3 credentials: ewr1.vultrobjects.com - [REDACTED ACCESS KEY] - [REDACTED SECRET KEY]
Dalam contoh ini, nama titik akhir adalah ewr1.vultrobjects.com, dan kunci dihapus. Akses penyimpanan objek baru Anda dengan klien S3 yang kompatibel menggunakan nama titik akhir, kunci akses dan kunci rahasia yang ditunjukkan oleh program Go Anda.
Go (Golang) adalah bahasa pemrograman modern yang dikembangkan di Google, dan berfokus pada kesederhanaan dan keamanan. Ini telah menjadi bahasa populer yang digunakan untuk server-sid
Golang adalah bahasa pemrograman yang dikembangkan oleh Google. Berkat fleksibilitas, kesederhanaan dan keandalannya, Golang telah menjadi salah satu yang paling populer
Go (juga dikenal sebagai Golang) adalah bahasa pemrograman mirip-diketik, dikompilasi, mirip-C yang dikembangkan oleh Google. Kesederhanaan dan fleksibilitas gosip telah membuatnya menjadi b
Persyaratan Pengetahuan dasar UNIX. FreeBSD x64 dengan Nginx diinstal. Instal Alat Anda memerlukan beberapa program yang tidak dikirimkan bersama FreeBSD. Ru
Golang adalah bahasa pemrograman yang dikembangkan oleh Google yang akan menjaga tradisi C, tetapi fokus pada kesederhanaan dan keamanan. Ini telah menjadi bahasa populer
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.
CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?
Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.
Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.
Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut