- Notifications
You must be signed in to change notification settings - Fork0
tqmvt/yolo-backend
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Written in Golang with Gin Framework and Gorm
Write restful API forYOLO game with fast development and developer friendly
- Default ENV Configuration Manage from
.env
. sample file.env.example
# Server ConfigurationSECRET=h9wt*pasj6796j##w(w8=xaje8tpi6h*r&hzgrz065u&ed+k2)DEBUG=True # `False` in ProductionALLOWED_HOSTS=0.0.0.0SERVER_HOST=0.0.0.0SERVER_PORT=8000# Database ConfigurationMASTER_DB_NAME=test_pg_goMASTER_DB_USER=mamunMASTER_DB_PASSWORD=123MASTER_DB_HOST=postgres_dbMASTER_DB_PORT=5432MASTER_DB_LOG_MODE=True # `False` in ProductionMASTER_SSL_MODE=disableREPLICA_DB_NAME=test_pg_goREPLICA_DB_USER=mamunREPLICA_DB_PASSWORD=123REPLICA_DB_HOST=localhostREPLICA_DB_PORT=5432REPLICA_DB_LOG_MODE=True # `False` in ProductionREPLICA_SSL_MODE=disable
- Server
DEBUG
setFalse
in Production - Database Logger
MASTER_DB_LOG_MODE
andREPLICA_DB_LOG_MODE
setFalse
in production - If ENV Manage from YAML file add a config.yml file and configurationdb.go andserver.go. See MoreENV YAML Configure
- UseGin Web Framework
- UseGORM as an ORM
- Use database
MASTER_DB_HOST
value set aslocalhost
for local development, and usepostgres_db
for docker development
- Check PG Admin onhttp://0.0.0.0:5050/browser/
- Login with Credential Email
admin@admin.com
Passwordroot
- Connect Database Host as
postgres_db
, DB Username and Password as per.env
set - Note: if not configure
.env
, default Usernamemamun
and password123
Follow these steps:
- Copy.env.example as
.env
and configure necessary values - To add all dependencies for a package in your module
go get .
in the current directory - Locally run
go run main.go
orgo build main.go
and run./main
. or runair
to host with hot reloading - Check Application health available on0.0.0.0:8000/health
Follow these steps:
- Make sure install the latest version of docker and docker-compose
- Docker Installation for your desire OShttps://docs.docker.com/engine/install/ubuntu/
- Docker Composer Installationhttps://docs.docker.com/compose/install/
- Run and Develop
make dev
- Check Application health available on0.0.0.0:8000/health
- Run
make build
- Run
make production
database:driver:"postgres"dbname:"test_pg_go"username:"mamun"password:"123"host:"postgres_db"# use `localhost` for local developmentport:"5432"ssl_mode:disablelog_mode:falseserver:host:"0.0.0.0"port:"8000"secret:"secret"allow_hosts:"localhost"debug:false#use `false` in productionrequest:timeout:100
funcServerConfig()string {viper.SetDefault("server.host","0.0.0.0")viper.SetDefault("server.port","8000")appServer:=fmt.Sprintf("%s:%s",viper.GetString("server.host"),viper.GetString("server.port"))returnappServer}
funcDbConfiguration()string {dbname:=viper.GetString("database.dbname")username:=viper.GetString("database.username")password:=viper.GetString("database.password")host:=viper.GetString("database.host")port:=viper.GetString("database.port")sslMode:=viper.GetString("database.ssl_mode")dsn:=fmt.Sprintf("host=%s user=%s password=%s dbname=%s port=%s sslmode=%s",host,username,password,dbname,port,sslMode)returndsn}
make dev
: make dev for development workmake build
: make build containermake production
: docker production build and upclean
: clean for all clear docker images
About
YOLO API using Go, Gin, Gorm, Logrus
Topics
Resources
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
No releases published
Packages0
No packages published
Uh oh!
There was an error while loading.Please reload this page.