code-compose/Makefile
2024-03-20 13:34:31 +09:00

108 lines
3 KiB
Makefile

########################################################################################################################
## dirs
########################################################################################################################
vars = ./var/uploads ./var/forgejo
########################################################################################################################
## service
########################################################################################################################
.PHONY: all
all: ps ;
.PHONY: up
up: $(vars)
docker-compose up -d
.PHONY: down
down:
docker-compose down
.PHONY: reload
reload:
$(MAKE) down
$(MAKE) up
.PHONY: restart
restart:
docker-compose restart
.PHONY: build
build:
docker-compose build
.PHONY: pull
pull:
docker-compose pull
.PHONY: log
log:
docker-compose logs -f --tail 0
.PHONY: log-all
log-all:
docker-compose logs --tail all
.PHONY: ps
ps:
docker-compose ps
.PHONY: top
top:
docker-compose top
########################################################################################################################
## db
########################################################################################################################
.PHONY: db-up
db-up: $(vars)
docker-compose up -d postgres
@echo -n "Waiting boot... "
@docker-compose exec postgres "sh" "-c" "while ! pg_isready -U pleroma > /dev/null; do echo -n '.'; sleep 1; done"
@echo "[OK]"
.PHONY: db-down
db-down:
docker-compose down postgres
.PHONY: db-cli
db-cli:
# https://www.postgresql.jp/document/7.3/programmer/libpq-connect.html
docker-compose exec postgres psql 'user=pleroma password=mc4Bk3ycucTfRewcgqSU2n6sxAYuZsjw dbname=pleroma'
.PHONY: db-dump
db-dump:
# https://www.postgresql.jp/document/7.3/programmer/libpq-connect.html
docker-compose exec postgres pg_dump 'user=pleroma password=mc4Bk3ycucTfRewcgqSU2n6sxAYuZsjw dbname=pleroma' > dump_$(shell date '+%Y%m%d').sql
.PHONY: db-restore
db-restore: db-up
cat dump_$(shell date '+%Y%m%d').sql | docker-compose exec -T postgres psql 'user=pleroma password=mc4Bk3ycucTfRewcgqSU2n6sxAYuZsjw dbname=pleroma'
.PHONY: db-vacuum
db-vacuum:
echo "VACUUM ANALYZE;" | docker-compose exec -T postgres psql -U pleroma
.PHONY: db-log
db-log:
docker-compose logs postgres -f --tail 0
########################################################################################################################
## backup
########################################################################################################################
.PHONY: backup
backup:
$(MAKE) db-dump
sudo bash _scripts/backup.sh $(shell id -g) $(shell id -u) 'var' 'dump_$(shell date '+%Y%m%d').sql'
########################################################################################################################
## dirs
########################################################################################################################
# https://makefiletutorial.com/#automatic-variables
$(vars):
mkdir -p "$@"