forked from sameersbn/docker-redmine
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
75 lines (57 loc) · 1.99 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
IMAGE:=sameersbn/redmine
CERTS_DIR=certs
CERT_FILES=$(CERTS_DIR)/redmine.crt $(CERTS_DIR)/dhparam.pem
.PHONY: test-release generate-certs clean
all: build
help:
@echo ""
@echo "-- Help Menu"
@echo ""
@echo " 1. make build - build the redmine image"
@echo " 2. make quickstart - start redmine"
@echo " 3. make stop - stop redmine"
@echo " 4. make logs - view logs"
@echo " 5. make purge - stop and remove the container"
build:
@docker build --tag=$(IMAGE) .
test-release: generate-certs
@echo Clean old run
sudo rm -rf /srv/docker/redmine/
sudo mkdir -p /srv/docker/redmine/redmine
sudo cp -rf $(CERTS_DIR) /srv/docker/redmine/redmine/
docker compose down
docker compose build
docker compose up
generate-certs: $(CERT_FILES)
$(CERTS_DIR):
mkdir -p $(CERTS_DIR)
$(CERTS_DIR)/redmine.key: | $(CERTS_DIR)
openssl genrsa -out $(CERTS_DIR)/redmine.key 2048
$(CERTS_DIR)/redmine.csr: $(CERTS_DIR)/redmine.key
openssl req -new -key $(CERTS_DIR)/redmine.key -out $(CERTS_DIR)/redmine.csr
$(CERTS_DIR)/redmine.crt: $(CERTS_DIR)/redmine.csr $(CERTS_DIR)/redmine.key
openssl x509 -req -days 365 -in $(CERTS_DIR)/redmine.csr -signkey $(CERTS_DIR)/redmine.key -out $(CERTS_DIR)/redmine.crt
$(CERTS_DIR)/dhparam.pem: | $(CERTS_DIR)
openssl dhparam -out $(CERTS_DIR)/dhparam.pem 2048
clean:
rm -rf $(CERTS_DIR)
release:
./make_release.sh
@echo "Open https://github.com/sameersbn/docker-redmine/releases and Draft new release"
quickstart:
@echo "Starting redmine..."
@docker run --name=redmine-demo -d -p 10080:80 \
-v /var/run/docker.sock:/run/docker.sock \
-v $(shell which docker):/bin/docker \
$(IMAGE) >/dev/null
@echo "Please be patient. This could take a while..."
@echo "Redmine will be available at http://localhost:10080"
@echo "Type 'make logs' for the logs"
stop:
@echo "Stopping redmine..."
@docker stop redmine-demo >/dev/null
purge: stop
@echo "Removing stopped container..."
@docker rm redmine-demo >/dev/null
logs:
@docker logs -f redmine-demo