MinIO: Node.js verbinden met MinIO
Deze documentatie maakt deel uit van de Aan de slag-gids. Bekijk de volledige gids hier: Hoe te beginnen met het gebruik van MinIO voor S3-compatibele objectopslag.
👋 Welkom bij de Stackhero-documentatie!
Stackhero biedt een kant-en-klare MinIO Object Storage oplossing die tal van voordelen biedt, waaronder:
- Onbeperkte overdrachten.
- Eenvoudige, voorspelbare en transparante prijzen.
- Aanpasbare domeinnaam beveiligd met HTTPS (bijvoorbeeld, https://object-storage.uw-bedrijf.com).
- Moeiteloze updates met slechts één klik.
- Optimale prestaties en robuuste beveiliging aangedreven door een privé en toegewijde VM.
- Beschikbaar in 🇪🇺 Europa en 🇺🇸 USA.
Bespaar tijd en vereenvoudig uw leven: het kost slechts 5 minuten om de MinIO Object Storage hosting oplossing van Stackhero te proberen!
Er zijn twee methoden om Node.js-applicaties met MinIO te verbinden.
Verbinden met MinIO met de AWS SDK
Installeer eerst het AWS SDK-pakket voor Node.js:
npm install aws-sdk
Hieronder staat een voorbeeld dat laat zien hoe u verbinding maakt met MinIO met behulp van de AWS SDK:
const process = require('process');
const AWS = require('aws-sdk');
const s3 = new AWS.S3({
accessKeyId: 'YOUR_ACCESS_KEY',
secretAccessKey: 'YOUR_SECRET_KEY',
endpoint: 'https://<XXXXXX>.stackhero-network.com',
s3ForcePathStyle: true, // vereist met MinIO
signatureVersion: 'v4'
});
// putObject operatie
s3.putObject(
{ Bucket: 'testbucket', Key: 'testobject', Body: 'Hello from MinIO!' },
(err, data) => {
if (err)
console.log(err);
else
console.log('Successfully uploaded data to testbucket/testobject');
}
);
// getObject operatie
const file = require('fs').createWriteStream('/tmp/mykey');
s3.getObject({ Bucket: 'testbucket', Key: 'testobject' })
.on('httpData', chunk => file.write(chunk))
.on('httpDone', () => file.end())
.send();
Voor meer details, bezoek de MinIO Node.js documentatie.
Verbinden met MinIO met de MinIO SDK
Als u de voorkeur geeft aan het gebruik van de MinIO SDK voor Node.js, installeer deze dan met npm:
npm install minio
Hier is een voorbeeld van hoe u verbinding maakt met MinIO met behulp van de MinIO SDK voor Node.js:
const process = require('process');
const Minio = require('minio');
// Instantieer de MinIO-client met de endpoint en toegangssleutels
const minioClient = new Minio.Client({
endpoint: '<XXXXXX>.stackhero-network.com',
port: 443,
useSSL: true,
accessKeyId: 'YOUR_ACCESS_KEY',
secretAccessKey: 'YOUR_SECRET_KEY',
});
// Bestand om te uploaden
const file = '/tmp/photos-europe.tar';
// Maak een bucket genaamd 'europetrip'
minioClient.makeBucket(
'europetrip',
'us-east-1',
err => {
if (err) return console.log(err);
console.log('Bucket created successfully in "us-east-1".');
const metaData = {
'Content-Type': 'application/octet-stream',
'X-Amz-Meta-Testing': 1234,
'example': 5678
};
// Upload het bestand naar de bucket 'europetrip' met behulp van de fPutObject API
minioClient.fPutObject(
'europetrip',
'photos-europe.tar',
file,
metaData,
(err, etag) => {
if (err) return console.log(err);
console.log('File uploaded successfully.');
}
);
}
);
Voor meer informatie, zie de MinIO Node.js SDK documentatie.