-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
51 lines (37 loc) · 1.13 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
IMAGE_NAME = memorial
IMAGE_TAG = v0.2
DOCKERFILE_DIR = .
WORK_DIR = .
PROJECT = metaverse
REPO_NAME = ferdinandsu
APP_NAME ?= $(IMAGE_NAME)
SH_APP_NAME = $(APP_NAME)_sh
DOCKER = docker
DEFAULT_RUN_OPTIONS = --cap-add=SYS_PTRACE --shm-size=1024m
.PHONY: default install restart start stop logs uninstall deploy sh status
default:
$(DOCKER) build -f $(DOCKERFILE_DIR)/Dockerfile -t $(IMAGE_NAME):$(IMAGE_TAG) $(WORK_DIR)
install:
$(DOCKER) run $(RUN_OPTIONS) -p 80:80 -tid --restart=on-failure --name $(APP_NAME) $(IMAGE_NAME):$(IMAGE_TAG)
restart:
$(DOCKER) restart $(APP_NAME)
start:
$(DOCKER) start $(APP_NAME)
stop:
$(DOCKER) stop $(APP_NAME)
logs:
$(DOCKER) logs -f $(APP_NAME)
uninstall:
$(DOCKER) rm -f $(APP_NAME)
tag:
$(DOCKER) tag $(IMAGE_NAME):$(IMAGE_TAG) $(REPO_NAME)/$(IMAGE_NAME):$(IMAGE_TAG)
publish: tag
$(DOCKER) push $(REPO_NAME)/$(IMAGE_NAME):$(IMAGE_TAG)
sh:
$(DOCKER) run $(RUN_OPTIONS) -tid --restart=on-failure --name $(SH_APP_NAME) --entrypoint=/bin/sh $(IMAGE_NAME):$(IMAGE_TAG)
runsh: sh
$(DOCKER) attach $(SH_APP_NAME)
cleansh:
$(DOCKER) rm -f $(SH_APP_NAME)
status:
$(DOCKER) ps -a | grep $(IMAGE_NAME)