/
Makefile
133 lines (95 loc) · 3.67 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
up_db:
docker-compose -f ./compose/docker-compose.db.yml up -d --build
exec_db:
docker exec -it migration_tools sh
down_db:
docker-compose -f ./compose/docker-compose.db.yml down
# ========================================================
up_test:
docker-compose -f ./compose/docker-compose.test.yml up -d --build
exec_test:
docker exec -it backend_test sh
down_test:
docker-compose -f ./compose/docker-compose.test.yml down
# ========================================================
up_build_dev:
docker-compose -f ./compose/docker-compose.dev.yml up -d --build
re_build_nginx:
docker-compose -f ./compose/docker-compose.dev.yml up -d --force-recreate --build nginx
down_dev:
docker-compose -f ./compose/docker-compose.dev.yml down
exec_backend:
docker exec -it backend sh
# =========================================================
up_build:
docker-compose -f ./compose/docker-compose.yml up -d --build
down:
docker-compose -f ./compose/docker-compose.yml down
# ==========================================================
add_crontab:
(crontab -l 2>/dev/null; echo "* * * * * curl --max-time 30 --connect-timeout 5 -X DELETE --url $(server)/api/v1/routine/stores") | crontab -
# ==========================================================
renew_certbot:
docker-compose -f ./compose/docker-compose.cert.yml run --rm certbot renew
docker restart nginx
# ==========================================================
kind_create:
kind create cluster --config ./k8s/kind.yaml
kind_delete:
kind delete cluster
kind_loadimage_backend:
kind load docker-image queue-system-backend:v$(ver)
kind_loadimage_frontend:
kind load docker-image queue-system-frontend:v$(ver)
kind_loadimage_grpc:
kind load docker-image queue-system-grpc:v$(ver)
# ==========================================================
docker_build_backend:
mkdir backend_temp
cp -r ./backend ./backend_temp/backend
docker build -f Dockerfile.backend -t queue-system-backend:v$(ver) --no-cache ./backend_temp
rm -r backend_temp
docker save queue-system-backend:v$(ver) > queue-system-backend.tar
docker_build_frontend:
mkdir frontend_temp frontend_temp/scripts frontend_temp/scripts/nginx
cp -r ./frontend ./frontend_temp/frontend
cp ./scripts/nginx/nginx.frontend.conf ./frontend_temp/scripts/nginx/nginx.frontend.conf
docker build -f Dockerfile.frontend -t queue-system-frontend:v$(ver) --no-cache ./frontend_temp
rm -r frontend_temp
docker save queue-system-frontend:v$(ver) > queue-system-frontend.tar
docker_build_grpc:
mkdir grpc_temp
cp -r ./grpc ./grpc_temp/grpc
docker build -f Dockerfile.grpc -t queue-system-grpc:v$(ver) --no-cache ./grpc_temp
rm -r grpc_temp
docker save queue-system-grpc:v$(ver) > queue-system-grpc.tar
docker_clean_all:
docker system prune -a
# ==============================================================================
vm_create:
multipass launch --cpus 2 --disk 15G --mem 6G --name $(name) 20.04
multipass mount ./ $(name)
multipass exec $(name) -- sudo apt install make
multipass shell $(name)
microk8s_install:
sudo snap install microk8s --classic
sudo usermod -a -G microk8s ubuntu
sudo snap alias microk8s.kubectl kubectl
sudo chown -f -R ubuntu ~/.kube
newgrp microk8s
microk8s_docker_install:
sudo apt update
sudo apt install docker.io
sudo gpasswd -a $(user) docker
microk8s_load_images_backend:
microk8s ctr image import queue-system-backend.tar
microk8s_load_images_frontend:
microk8s ctr image import queue-system-frontend.tar
microk8s_load_images_grpc:
microk8s ctr image import queue-system-grpc.tar
microk8s_enable_addons:
microk8s enable dns ingress hostpath-storage metallb
# microk8s config
# hostname -I | awk '{print $1}'
# multipass find
# multipass info --all