What is @google-cloud/compute?
@google-cloud/compute is an npm package that provides a client library for interacting with Google Cloud Compute Engine. It allows developers to manage virtual machine instances, networks, firewalls, and other resources on Google Cloud Platform (GCP).
What are @google-cloud/compute's main functionalities?
Create a VM instance
This code sample demonstrates how to create a new VM instance in Google Cloud Compute Engine using the @google-cloud/compute package.
const {InstancesClient} = require('@google-cloud/compute');
const compute = new InstancesClient();
async function createInstance() {
const [response] = await compute.insert({
project: 'your-project-id',
zone: 'us-central1-a',
instanceResource: {
name: 'instance-name',
machineType: 'zones/us-central1-a/machineTypes/n1-standard-1',
disks: [
{
boot: true,
initializeParams: {
sourceImage: 'projects/debian-cloud/global/images/family/debian-10'
}
}
],
networkInterfaces: [
{
network: 'global/networks/default'
}
]
}
});
console.log('Instance created:', response);
}
createInstance().catch(console.error);
List VM instances
This code sample demonstrates how to list all VM instances in a specific zone using the @google-cloud/compute package.
const {InstancesClient} = require('@google-cloud/compute');
const compute = new InstancesClient();
async function listInstances() {
const [instances] = await compute.list({
project: 'your-project-id',
zone: 'us-central1-a'
});
console.log('Instances:', instances);
}
listInstances().catch(console.error);
Delete a VM instance
This code sample demonstrates how to delete a VM instance in Google Cloud Compute Engine using the @google-cloud/compute package.
const {InstancesClient} = require('@google-cloud/compute');
const compute = new InstancesClient();
async function deleteInstance() {
const [response] = await compute.delete({
project: 'your-project-id',
zone: 'us-central1-a',
instance: 'instance-name'
});
console.log('Instance deleted:', response);
}
deleteInstance().catch(console.error);
Other packages similar to @google-cloud/compute
aws-sdk
The aws-sdk package is the official AWS SDK for JavaScript, which allows developers to interact with various AWS services, including EC2 for managing virtual machine instances. It provides similar functionalities to @google-cloud/compute but for Amazon Web Services.
azure-arm-compute
The azure-arm-compute package is the Azure SDK for managing compute resources in Microsoft Azure. It provides functionalities to manage virtual machines, disks, and other compute resources on Azure, similar to what @google-cloud/compute offers for Google Cloud Platform.