Skip to content

Latest commit

 

History

History
89 lines (62 loc) · 1.59 KB

File metadata and controls

89 lines (62 loc) · 1.59 KB

e-backend

e-backend is a backend for all the projects.

cat

▗▄▄▄▖▗▄▄▖  ▗▄▖  ▗▄▄▖▗▖ ▗▖▗▄▄▄▖▗▖  ▗▖▗▄▄▄ 
▐▌   ▐▌ ▐▌▐▌ ▐▌▐▌   ▐▌▗▞▘▐▌   ▐▛▚▖▐▌▐▌  █
▐▛▀▀▘▐▛▀▚▖▐▛▀▜▌▐▌   ▐▛▚▖ ▐▛▀▀▘▐▌ ▝▜▌▐▌  █
▐▙▄▄▖▐▙▄▞▘▐▌ ▐▌▝▚▄▄▖▐▌ ▐▌▐▙▄▄▖▐▌  ▐▌▐▙▄▄▀

Create database

sudo -iu postgres
createdb ebackend

Prepare

cp .e-backend.example .e-backend

And then edit .e-backend file.

Run HTTP-server

make run

Building

Build binary:

make build

Clean:

make clean

Run binary:

./build/e-backend serve

Run as service (POSIX systems with systemd)

sudo mkdir /opt/e-backend
sudo cp ./build/* /opt/e-backend -r
sudo cp /opt/e-backend/.e-backend.example /opt/e-backend/.e-backend
sudo cp ./systemd/e-backend.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now e-backend.service

Module generation

go run -tags="all dev" main.go module create [name] -t crud

Where name is name of module is lowerCamelCase, -t is template name (simple, crud).

Run with docker

Build image:

docker build -f dockerfiles/Dockerfile -t e-backend .

Run:

docker run --name e-backend --rm --network host \
-v "$(pwd)/.e-backend:/app/.e-backend" \
e-backend