-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added FAQ, improved limitations and running for how to deploy Dyna53.
- Loading branch information
Showing
4 changed files
with
93 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
# FAQ | ||
|
||
> Is this a serious project? Can I run it in production? | ||
No, it is not a serious project, just a hobby project which turned out to be a funny programming exercise. Technically it could be run in production but there's little sense in doing so. You may incur in AWS costs. No guarantee is provided. | ||
|
||
|
||
> Is this project affiliated with AWS? | ||
No, it is not. It is a project created by [Alvaro Hernandez](https://aht.es), founder of [OnGres](https://ongres.com) and [AWS Data Hero](https://aws.amazon.com/developer/community/heroes/alvaro-hernandez/). There's no affiliation with Amazon AWS and this is not a project nor a service by AWS. "Amazon Web Services", "AWS" and "DynamoDB" are registered trademarks of Amazon Technologies, Inc. | ||
|
||
|
||
> Are there any limitations compared to DynamoDB? | ||
Yes, see [Limitations](limitations.md). | ||
|
||
|
||
> What's this software license? Can I run this as-a-Service? | ||
The project is licensed under the [AGPLv3](https://www.gnu.org/licenses/agpl-3.0.en.html) Open Source license. | ||
|
||
There would be very little sense in running Dyna53 as-a-Service, but it could be done. AGPLv3 license terms ensure that the project will remain Open Source for its users, so if you would run a modified version of it your users would have the right to get a copy of the modified source code. | ||
|
||
|
||
> How far will be Dyna53 be developed? Are contributions accepted? | ||
Dyna53 is just an excercise and there should be little expectations that it will be developed much further. It is a non-goal to emulate DynamoDB completely. | ||
|
||
Contributions are welcomed, though, specially in polishing and testing the existing code, more than adding new features. | ||
|
||
|
||
> Is there an Easter Egg in the program? | ||
Yes! If you have found it, please open an issue to discuss it :) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# How to run Dyna53 | ||
|
||
## CLI and configuration | ||
|
||
Dyna53 can be either downloaded from the Releases or compiled by yourself. Once the binary is downloaded or generated it can be run calling the binary `dyna53`. | ||
|
||
It requires four parameters for configuration, that can be passed by any of the mechanisms supported by [MicroProfile Configuration](https://microprofile.io/microprofile-config/). Most typically it would be either command line arguments or environment variables: | ||
|
||
CLI arguments, Java style: | ||
```sh | ||
./dyna53 -Dhosted_zone=XXX -Daccess_key_id=XXX -Dsecret_access_key=XXX -Droute53_aws_profile=XXX | ||
``` | ||
|
||
Environment variables: | ||
```sh | ||
export hosted_zone=XXX | ||
export access_key_id=XXX | ||
export secret_access_key=XXX | ||
export route53_aws_profile=XXX | ||
./dyna53 | ||
``` | ||
|
||
The configuration variables are the following, and all are compulsory: | ||
* `hosted_zone`: the ID (e.g. `ZXXXXXXXXXXXXXXXU`) of the Route53 DNS zone where data will be stored. It can be public (WARNING: data will become public!) or a private zone. | ||
* `route53_aws_profile`: the name of the configured AWS profile where `dyna53` will be running that has permissions to perform the required operation on Route53. | ||
* `access_key_id` and `secret_access_key`: the credentials used to authenticate the users against Dyna53. Note that these credentials are entirely made up, they don't need to exist on IAM. | ||
|
||
|
||
## Environment | ||
|
||
Dyna53 is a Linux binary that could run anywhere. It could be your laptop, but for production-like performance you probably want to run it on a Lambda or EC2 instance. For a true serverless experience, it should run as a Lambda (with a custom runtime, to support the Linux binary). |