2022-09-10 18:31:23 +02:00
|
|
|
CMDS += node-exec stack-node-exec node-exec:% node-exec@% node-run node-run:% node-run@%
|
2022-08-24 11:34:07 +02:00
|
|
|
node ?= node/node
|
|
|
|
ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET4 DOCKER_INTERNAL_DOCKER_HOST
|
2021-05-22 02:34:24 +02:00
|
|
|
|
2022-07-06 23:27:41 +02:00
|
|
|
# target bootstrap-stack-node: Fire node-ssl-certs
|
|
|
|
.PHONY: bootstrap-stack-node
|
|
|
|
bootstrap-stack-node: docker-network-create-$(DOCKER_NETWORK_PUBLIC) node-ssl-certs
|
|
|
|
|
|
|
|
# target node: Fire stack-node-up
|
2021-02-09 17:05:00 +01:00
|
|
|
.PHONY: node
|
2022-07-06 23:27:41 +02:00
|
|
|
node: stack-node-up
|
2022-06-30 23:37:10 +02:00
|
|
|
|
|
|
|
# target node-%; Fire target stack-node-%
|
2022-09-10 18:31:23 +02:00
|
|
|
.PHONY: node-%
|
2022-06-30 23:37:10 +02:00
|
|
|
node-%: stack-node-%;
|
|
|
|
|
|
|
|
# target node-ssl-certs: Create ${DOMAIN}.key.pem and ${DOMAIN}.crt.pem files
|
|
|
|
.PHONY: node-ssl-certs
|
|
|
|
node-ssl-certs:
|
2022-08-24 11:34:07 +02:00
|
|
|
docker run --rm --mount source=$(NODE_DOCKER_VOLUME),target=/certs alpine [ -f /certs/$(DOMAIN).crt.pem -a -f /certs/$(DOMAIN).key.pem ] \
|
|
|
|
|| $(RUN) docker run --rm -e DOMAIN=$(DOMAIN) --mount source=$(NODE_DOCKER_VOLUME),target=/certs alpine sh -c "\
|
2022-06-30 23:37:10 +02:00
|
|
|
apk --no-cache add openssl \
|
|
|
|
&& { [ -f /certs/${DOMAIN}.key.pem ] || openssl genrsa -out /certs/${DOMAIN}.key.pem 2048; } \
|
|
|
|
&& openssl req -key /certs/${DOMAIN}.key.pem -out /certs/${DOMAIN}.crt.pem \
|
|
|
|
-addext extendedKeyUsage=serverAuth \
|
|
|
|
-addext subjectAltName=DNS:${DOMAIN} \
|
|
|
|
-subj \"/C=/ST=/L=/O=/CN=${DOMAIN}\" \
|
|
|
|
-x509 -days 365"
|