This project is a work-in-progress hobby project, however contributions are welcome. Please feel free to open issues or make a pull request.
Using Kubernetes:
The application can be deployed to Kubernetes using Skaffold:
skaffold run
Note that when deploying to Kubernetes you will need to have deployed Redis, Postgres and Mongo instances off cluster and adjusted your configuration for the services.
Using Docker:
The application can be easily deployed with Docker Compose using the following command from the root directory:
docker compose up
When deploying using Docker Compose, the default container configuration (exposed as environment variables in docker-compose.yaml) can be left as is.
This is presuming that the docker-compose.override.yaml file, which contains specification for the instances that each service requires, is also being used. However, if solely the docker-compose.yaml is being used then the configuration will need to be changed to point to your instances of the databases.
For an outline on the environment variables that each service requires, or events that are produced/consumed by the services, view the documentation for the individual services (located in the README.md
files of each service folder).
Here is a table for easy access:
Service | Documentation | Example Configuration |
---|---|---|
frontend | README.md | .env.example |
gateway-service | README.md | .env.example |
panel-service | README.md | .env.example |
post-service | README.md | .env.example |
user-service | README.md | .env.example |
auth-service | README.md | .env.example |
comment-service | README.md | .env.example |