Create VFS item with S3 type connected with S3 bucket in LocalStack.
- Docker;
- AWS CLI.
$ docker --version
Docker version 19.03.12, build 48a66213fe
$ aws --version
aws-cli/1.16.190 Python/3.6.0 Windows/10 botocore/1.12.180
- Run compose command to create containers with CrushFTP and LocalStack:
docker-compose -f "docker-compose.yml" up -d --build- Check if
my-bucketS3 bucket exists in runninglocalstackcontainer:
aws --endpoint-url=http://localhost:4566 s3api list-buckets --query "Buckets[].Name"Expected result:
[
"my-bucket"
]If your result is an empty array then you may need to wait a few more seconds.
LocalStack delays on init.
- Put file into LocalStack S3:
aws --endpoint-url=http://localhost:4566 s3api put-object --bucket=my-bucket --key=my-file --body=file- Check if
crushftpcontainer has got access tomy-bucketinlocalstackcontainer:
docker exec -it crushftp bash # connect to the crushftp container.
curl -H "Authorization: AWS qwerty:qwerty" http://localstack:4566/my-bucket/my-file # get file from localstack's S3.The expected result of the last command:
As Gregor Samsa awoke one morning from uneasy dreams he found himself transformed in his bed into a gigantic insect.bash-5.0
In curl command you must set Authorization header with random user/password values.
That's how LocalStack works.
- CrushFTP is running in
crushftpcontainer. - LocalStack with S3 service is running in
localstackcontainer. my-bucketS3 bucket is created in LocalStack S3 service.crushftpcontainer has got access to thelocalstack's S3.
- Go to http://localhost:8080/WebInterface/UserManager/index.html to manage user's stuff.
- Enter
adminas a user name andadminas a password. - Click
Create new Remote Itembutton, fill inputs, and test it.
Testing fails but you are still able to create the remote item.
- Click
OKat the modal window to create VFS item. - Update VFS item permissions.
- Click
Savebutton at the bottom. - Go to http://localhost:8080/ to upload some files into
directory. - Click
Add files...button. - Upload file.
It does not work.


