Quickstart
Mount an Amazon S3 bucket on your own machine with Docker, in about five minutes.
This quickstart uses Amazon S3. The steps are the same for other providers: only the credentials and the bucket scheme change. See Cloud credentials.
You need
- Docker, on Linux or MacOS
- An S3 bucket, and AWS credentials that can read and write it in
~/.aws/credentials - An NFS client: built into MacOS;
sudo apt install nfs-commonon Debian and Ubuntu
1. Start BlixtFS
mkdir -p ~/blixt-data
docker run -d --name blixt --privileged \
-p 127.0.0.1:2049:2049 \
-v ~/blixt-data:/data \
-v ~/.aws/credentials:/config/aws/credentials:ro \
blixtfs/standard:latest \
--aws_default_region us-east-1 \
--default_cloud aws s3://YOUR-BUCKET
Replace YOUR-BUCKET with your bucket’s name, and us-east-1 with its region.
The container looks for AWS credentials at /config/aws/credentials.
2. Wait for it to be ready
docker logs -f blixt
Once the log shows your bucket being served, press Ctrl+C to stop following it. For a bucket with many objects, the first indexing takes a little longer.
3. Mount it
# Linux
sudo mkdir -p /mnt/blixt
sudo mount -t nfs -o vers=4 127.0.0.1:/ /mnt/blixt
cd /mnt/blixt/aws/YOUR-BUCKET
# MacOS
mkdir -p ~/blixt
sudo mount -t nfs -o vers=4,noresvport 127.0.0.1:/ ~/blixt
cd ~/blixt/aws/YOUR-BUCKET
4. Try it
ls -la
echo "hello from BlixtFS" > hello.txt
cat hello.txt
Now look in the bucket with the AWS CLI. hello.txt is there as an ordinary
object:
aws s3 ls s3://YOUR-BUCKET/
aws s3 cp s3://YOUR-BUCKET/hello.txt -
It works the other way too. Upload an object with the AWS CLI and it appears in the mount within a few seconds:
echo "hello from S3" | aws s3 cp - s3://YOUR-BUCKET/from-s3.txt
ls
5. Clean up
cd ~
sudo umount /mnt/blixt # or ~/blixt on MacOS
docker rm -f blixt
rm -rf ~/blixt-data # BlixtFS's local state; your bucket is untouched
Next steps
- Set BlixtFS up properly with a configuration file: Docker
- Connect Windows machines over SMB: Connecting clients
- Learn what happens behind the mount: Architecture