Build your own S3 Server and keep your data safe!
The Ladon S3 Server is built using Java 8-13 and Maven
For > Java 17 look at the java17 branch.
If you prefer to run it with Jetty have a look at the Jetty example
mvn package && java -jar ladon-s3-server-jetty/target/ladon-s3-server-jetty-2.3.2.jar
mvn package && java -jar ladon-s3-server-boot/target/ladon-s3-server-boot-2.3.2.jar
Or run Docker:
mvn package && docker run -i --network=host mindconsulting/ladon:2.3.2
AWSCredentials credentials = new BasicAWSCredentials(
"rHUYeAk58Ilhg6iUEFtr",
"IVimdW7BIQLq9PLyVpXzZUq8zS4nLfrsoiZSJanu");
The core functions of S3 are mapped to a class called S3Repository. All you have to do is provide a bean of this type.
@Bean
S3Repository s3Repository() {
return new YourCustomRepository();
}
The request base path for the controller is configured with a property:
s3server.baseUrl=/api/s3
For a quick start there is an example for a file system storage added.
public class FSRepository {...}
If you want to use it, you have to specify the root directory where it will store the data. Default is: {user.home}/.s3server
s3server.fsrepo.root=${user.home}/.s3server
For other configuration options have a look at the application.properties
Supported so far is only access via REST API, no ACL, no policies, no torrent ....
To see what you can build with it have a look at Ladon Data Center Edition
Copyright (C) 2024 Mind Consulting
Free for private use, easy commercial licensing available here