Skip to content

sixwaaaay/sharing

Repository files navigation

sharing

Sharing Has An Relly Interesting Name

Description

FOSSA Status Apache 2.0

name CI coverage size version
users CI codecov Container Image Size Docker Image Version (latest semver)
content CI codecov Container Image Size Docker Image Version (latest semver)
comment CI codecov Container Image Size Docker Image Version (latest semver)

sharing is a content social platform backend. OpenAPI spec can be previewed at users, content, comment. openapi-typescript-codegen is recommended for typescript client code generation.

Requirements

A Github OAuth 2.0 Key is required. You can create a new OAuth App in your Github account.

A Mailgun API Key is required. You can create a new API Key in your Mailgun account.

A MySQL(8.0+) Cluster. MySQL Group Replication Cluster deployed by MySQL Operator is recommended. GTID mode is required.

A PostgreSQL(16.0+) Cluster. Patroni high availability (HA) PostgreSQL is recommended.

A S3 Compatible Object Storage Server. AWS S3 is recommended.

A Redis(5.0+) Cluster.

A RisingWave(1.10+) Cluster. deployed by RisingWave Operator is recommended.

A OpenTelemetry Collector(0.33+) Cluster. deployed by OpenTelemetry Operator is recommended.

A OpenTelemetry Data Storage. Grafana Cloud is recommended.

A ElasticSearch(7.0+) Cluster.

Installation

the application container images are build by GitHub Actions, you can pull the images from Docker Hub.

the sequence of deployment is users, content, comment. note that the users service is required by content and comment service.

for content and comment service, configuration can be override by environment variables. users service need a configuration file config.yaml in configs directory of the container.

just deploy them as a Kubernetes Deployment. Horizontal Pod Autoscaler(HPA) is recommended.

License

FOSSA Status