Så använder du GleSYS Objektlagring med hjälp av s3cmd

Inledning

s3cmd är ett gratis verktyg för att ladda upp, hämta och hantera data i en tjänst baserad på S3-protokollet. I den här guiden visar vi dig hur du installerar s3cmd och skapar din första bucket i GleSYS Objektlagringstjänst.

För att följa guiden behöver du en Access key och Secret key till objektlagringstjänsten. Om du är intresserad av att prova tjänsten så hör av dig till support@glesys.se.

Installera s3cmd

Om du har macOS kan du installera s3cmd med brew:

brew install s3cmd

Om du använder Debian eller Ubuntu använder du följande kommando:

apt-get install s3cmd

Eller CentOS/RHEL

yum install s3cmd

Använder du Windows så följ vår installationsguide här.

Konfigurera s3cmd

När installationen är klar konfigurerar du s3cmd med:

s3cmd --configure

Fyll i följande uppgifter:

Access Key: din access key

Secret Key: din secret key

Default region: dc-sto1

S3 Endpoint: objects.dc-sto1.glesys.net (utan prefix som https://)

DNS-style bucket+hostname:port template for accessing a bucket: %(bucket).objects.dc-sto1.glesys.net

I den här guiden GPG-krypterar vi inte filerna, så du kan hoppa över frågan om Encryption password och Path to GPG program genom att trycka Enter.

Use HTTPS protocol: Yes

Hoppa över frågan om HTTP Proxy server name genom att trycka Enter.

Test access with supplied credentials?: Y

Save settings: Y

Nu är du klar med konfigurationen och är redo att börja använda tjänsten.

Skapa din första bucket

Med hjälp av följande kommando i s3cmd skapar du en bucket för att lagra objekt. Namnet på en bucket får endast innehålla alfanumeriska och gemena tecken.

$ s3cmd mb s3://testbucket
Bucket 's3://testbucket/' created

Nu är du redo för att ladda upp filer till din bucket, det kan du göra med s3cmd eller genom din applikation.

Ladda upp och hämta filer i din bucket

En tom bucket är inte spännande så länge. Du vill såklart lägga filer i den med.

Här nedan laddar vi upp filen foo.bar till bucketen vi nyss skapade. Du gör det med kommandot put:

s3cmd put foo.bar s3://testbucket

För att ladda ner filen igen använder du kommandot get:

s3cmd get s3://testbucket/foo.bar

Lista filer

För att lista filerna i en specifik bucket använder du kommandot ls:

s3cmd ls s3://testbucket

För att lista alla filer i alla buckets använder du kommandot la:

s3cmd la

Ta bort en fil

För att ta bort en fil i en bucket använder du kommandot del:

s3cmd del s3://testbucket/foo.bar

Sätta rättigheter för anonym läs-access

För att anonymt kunna läsa filerna via http behöver du sätta listingsaccess på bucketen samt sätta rätten att hämta filer med hjälp av en policy.

Skapa en fil med exempelvis namnet policy.txt. Kopiera in texten nedan.

{
  "Version": "2012-10-17",
  "Statement":[
	{
  	"Effect":"Allow",
  	"Principal": "*",
  	"Action":["s3:ListBucket", "s3:GetObject"],
  	"Resource":["arn:aws:s3:::testbucket", "arn:aws:s3:::testbucket/*"]
	}
  ]
}

Ladda upp filen till din bucket:

s3cmd put policy.txt s3://testbucket

Applicera policyn med setpolicy

s3cmd setpolicy policy.txt s3://testbucket

Du kan nu surfa till https://testbucket.objects.dc-sto1.glesys.net/ för att lista dina filer.

Läs mer om policys

Läs mer

För en komplett lista med s3cmd-kommandon besök s3tools hemsida.

Hittar du inte det du söker?

Kontakta oss gärna för mer information. Vi hjälper dig att komma fram till den bästa lösningen för dina behov.

Skicka e-post Ring 0200-23 88 00