This project shows the use of Gin Framework in Golang.
This repository runs a simple main daemon (main) that implements a REST API for users. The daemon uses a postgres database to persist data and after creation uses migrations to create the user schema.
The only dependencies to run the services in this repository are:
docker
docker-compose
The program looks for the following environment variables:
DB_USER
: The postgres database username that gets used within the postgres connection string (Default:root
).DB_PASS
: The postgres database password that gets used within the postgres connection string (Default:root
).DB_NAME
: The postgres database name that gets used within the postgres connection string (Default:user
).DB_HOST
: The postgres database host name that gets used within the postgres connection string (Defaultdb
).DB_PORT
: The postgres database port that gets used within the postgres connection string (Default:5432
).
If the environment variable has a supplied default and none are set within the context of the host machine, then the default will be used.
To set any given environment variable, simply execute the following
pattern, replacing [ENV_NAME]
with the name of the environment variable and [ENV_VALUE]
with the
desired value of the environment variable: export [ENV_NAME]=[ENV_VALUE]
. To unset any set environment
variable, simply execute the following pattern, replacing [ENV_NAME]
with the name of the environment
variable: unset [ENV_NAME]
.
To run the services simply execute the following command:
make run
This will stop any containers defined by the compose file if already running
and then rebuild the containers using the compose file. The main daemon (main
)
will be available at localhost:8080
and the postgres instance will be available
at localhost:5432
.
To stop the services simply execute the following command:
make stop
To down the services simply execute the following command:
make down
Coming soon