Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/elipzis/go-serverless
🚀 "Go Serverless!" Example App to accompany the Conf42: Golang 2022 presentation
https://github.com/elipzis/go-serverless
aws cloud docker golang serverless
Last synced: 15 days ago
JSON representation
🚀 "Go Serverless!" Example App to accompany the Conf42: Golang 2022 presentation
- Host: GitHub
- URL: https://github.com/elipzis/go-serverless
- Owner: elipZis
- License: mit
- Created: 2022-03-11T10:54:00.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-03-21T17:11:46.000Z (over 2 years ago)
- Last Synced: 2024-10-10T16:21:38.987Z (about 1 month ago)
- Topics: aws, cloud, docker, golang, serverless
- Language: Go
- Homepage: https://elipZis.com
- Size: 3.21 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 🚀 Go Serverless!
An accompanying example project to the [Conf42: Golang 2022 presentation](https://www.conf42.com/Golang_2022_Savas_Ziplies_serverless) by Savas Ziplies.
A scaffold to deploy Golang framework-driven Serverless functions to AWS.
## Pre-requisites
* [AWS CLI](https://aws.amazon.com/cli/) already configured with required permissions
* [Docker installed](https://docs.docker.com/get-docker/)
* [Golang](https://golang.org)
* [SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-install.html)## Quickstart
To run/test locally:
* Run `docker-compose up -d timescaledb-postgis localstack`
* (Optional) Create a local queue in localstack for testing: `aws --endpoint-url=http://localhost:4566 sqs create-queue --queue-name goserverless-queue-dev`
* Copy `.env.example` to `.env`
* Run the single commands or deploy### Deploy
* `cd .build/aws`
* `sam build`
* `sam deploy --guided` for a first time deployment### Running
* The "api" cmd: `go build github.com/elipzis/go-serverless/api`
* The "queue" cmd: `go build github.com/elipzis/go-serverless/queue`
* The "web" cmd: `go build github.com/elipzis/go-serverless/web`## Tech Stack
The main tech stack contains of
* [AWS SAM](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-install.html)
* [Golang](https://golang.org)
* [Docker](https://docs.docker.com/get-docker/)
* [Postgres](https://www.postgresql.org/download/)
* [AWS SQS](https://aws.amazon.com/sqs/)
* [Fiber](https://github.com/gofiber/fiber)
* [AWS Lambda](https://aws.amazon.com/lambda/)
* [Chromium](https://github.com/alixaxel/chrome-aws-lambda)## Credits
- [elipZis GmbH](https://elipZis.com)
- [NeA](https://github.com/nea)
- [All Contributors](https://github.com/elipZis/go-serverless/contributors)## Thanks
Thanks to Conf42 for having me :)
- Web - [Conf42](https://www.conf42.com/)
- LinkedIn - [@conf42](https://www.linkedin.com/company/conf42)
- Twitter - [@conf42com](https://twitter.com/conf42com)## License
The MIT License (MIT). Please see [License File](LICENSE.md) for more information.