doc
This commit is contained in:
@@ -1,14 +1,18 @@
|
||||
# target base: Fire docker-network-create stack-base-up base-ssh-add
|
||||
.PHONY: base
|
||||
base: docker-network-create stack-base-up base-ssh-add
|
||||
|
||||
# target ssh-add: Fire base-ssh-add
|
||||
.PHONY: ssh-add
|
||||
ssh-add: base-ssh-add
|
||||
|
||||
# target base-ssh-add: Fire base-ssh-key and exec ssh-add file SSH_PRIVATE_KEYS in folder SSH_DIR
|
||||
.PHONY: base-ssh-add
|
||||
base-ssh-add: base-ssh-key
|
||||
$(eval SSH_PRIVATE_KEYS := $(foreach file,$(SSH_DIR)/id_rsa $(filter-out $(wildcard $(SSH_DIR)/id_rsa),$(wildcard $(SSH_DIR)/*)),$(if $(shell grep "PRIVATE KEY" $(file) 2>/dev/null),$(notdir $(file)))))
|
||||
$(call docker-run,$(DOCKER_SSH_AUTH) $(DOCKER_IMAGE_CLI),sh -c "$(foreach file,$(patsubst %,$(SSH_DIR)/%,$(SSH_PRIVATE_KEYS)),ssh-add -l |grep -qw $$(ssh-keygen -lf $(file) 2>/dev/null |awk '{print $$2}') 2>/dev/null || ssh-add $(file) ||: &&) true")
|
||||
|
||||
# target base-ssh-key: Setup ssh private key SSH_KEY in SSH_DIR
|
||||
.PHONY: base-ssh-key
|
||||
base-ssh-key: stack-base-up
|
||||
ifneq (,$(filter true,$(DRONE)))
|
||||
|
||||
@@ -5,6 +5,7 @@ ENV_VARS += ELASTICSEARCH_HOST ELASTICSEARCH_PASSWORD ELA
|
||||
|
||||
elastic ?= elastic/curator elastic/elasticsearch elastic/kibana alpine/sysctl
|
||||
|
||||
# target elasticsearch-delete-%: delete elasticsearch index %
|
||||
.PHONY: elasticsearch-delete-%
|
||||
elasticsearch-delete-%:
|
||||
docker ps |awk '$$NF ~ /myos_elasticsearch/' |sed 's/^.*:\([0-9]*\)->9200\/tcp.*$$/\1/' |while read port; do echo -e "DELETE /$* HTTP/1.0\n\n" |nc localhost $$port; done
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
logs ?= sematext/logagent
|
||||
|
||||
# target app-build-logagent: Exec 'rm -Rf /root/.npm /log-buufer/*' in docker SERVICE
|
||||
.PHONY: app-build-logagent
|
||||
app-build-logagent:
|
||||
$(call make,docker-compose-exec ARGS='rm -Rf /root/.npm /log-buffer/*' SERVICE=logagent)
|
||||
|
||||
+6
-4
@@ -1,11 +1,13 @@
|
||||
ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET
|
||||
|
||||
# target node: Fire docker-network-create-% for DOCKER_NETWORK_PUBLIC node-openssl stack-node-up
|
||||
.PHONY: node
|
||||
node: docker-network-create-$(DOCKER_NETWORK_PUBLIC) node-openssl stack-node-up
|
||||
|
||||
# target node-openssl: Create /certs/${DOMAIN}.key.pem and /certs/${DOMAIN}.crt.pem files
|
||||
.PHONY: node-openssl
|
||||
node-openssl:
|
||||
docker run --rm --mount source=$(COMPOSE_PROJECT_NAME_INFRA_NODE)_ssl-certs,target=/certs alpine:latest [ -f /certs/$(SSL_HOSTNAME).crt.pem -a -f /certs/$(SSL_HOSTNAME).key.pem ] \
|
||||
|| docker run --rm -e SSL_HOSTNAME=$(SSL_HOSTNAME) --mount source=$(COMPOSE_PROJECT_NAME_INFRA_NODE)_ssl-certs,target=/certs alpine:latest sh -c "apk --no-cache add openssl \
|
||||
&& { [ -f /certs/${SSL_HOSTNAME}.key.pem ] || openssl genrsa -out /certs/${SSL_HOSTNAME}.key.pem 2048; } \
|
||||
&& openssl req -key /certs/${SSL_HOSTNAME}.key.pem -out /certs/${SSL_HOSTNAME}.crt.pem -addext extendedKeyUsage=serverAuth -addext subjectAltName=DNS:${SSL_HOSTNAME} -subj \"/C=/ST=/L=/O=/CN=${SSL_HOSTNAME}\" -x509 -days 365"
|
||||
docker run --rm --mount source=$(COMPOSE_PROJECT_NAME_NODE)_ssl-certs,target=/certs alpine:latest [ -f /certs/$(DOMAIN).crt.pem -a -f /certs/$(DOMAIN).key.pem ] \
|
||||
|| docker run --rm -e DOMAIN=$(DOMAIN) --mount source=$(COMPOSE_PROJECT_NAME_NODE)_ssl-certs,target=/certs alpine:latest sh -c "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"
|
||||
|
||||
@@ -5,4 +5,3 @@ FABIO_CONSUL_HTTP_TOKEN=01234567-89AB-CDEF-0123-456789ABCDEF
|
||||
FABIO_SERVICE_9998_TAGS=urlprefix-fabio.${APP_DOMAIN}/
|
||||
PORTAINER_SERVICE_9000_TAGS=urlprefix-portainer.${APP_DOMAIN}/
|
||||
REGISTRATOR_CONSUL_HTTP_TOKEN=01234567-89AB-CDEF-0123-456789ABCDEF
|
||||
SSL_HOSTNAME=${APP_DOMAIN}
|
||||
|
||||
+3
-3
@@ -7,7 +7,7 @@ services:
|
||||
- DOCKER_BUILD_DIR=docker/consul
|
||||
context: ../..
|
||||
dockerfile: docker/consul/Dockerfile
|
||||
image: ${DOCKER_REPOSITORY_INFRA_NODE}/consul:${DOCKER_IMAGE_TAG}
|
||||
image: ${DOCKER_REPOSITORY_NODE}/consul:${DOCKER_IMAGE_TAG}
|
||||
environment:
|
||||
CONSUL_BIND_INTERFACE: '${DOCKER_HOST_IFACE}'
|
||||
CONSUL_CLIENT_INTERFACE: '${DOCKER_HOST_IFACE}'
|
||||
@@ -38,7 +38,7 @@ services:
|
||||
- consul:/consul/data
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
fabio:
|
||||
command: -registry.backend "consul" -registry.consul.addr "consul:8500" -registry.consul.token "$FABIO_CONSUL_HTTP_TOKEN" -proxy.addr ":80,:443;cs=local" -proxy.cs "cs=local;type=file;cert=/certs/${SSL_HOSTNAME}.crt.pem;key=/certs/${SSL_HOSTNAME}.key.pem"
|
||||
command: -registry.backend "consul" -registry.consul.addr "consul:8500" -registry.consul.token "$FABIO_CONSUL_HTTP_TOKEN" -proxy.addr ":80,:443;cs=local" -proxy.cs "cs=local;type=file;cert=/certs/${DOMAIN}.crt.pem;key=/certs/${DOMAIN}.key.pem"
|
||||
depends_on:
|
||||
- consul
|
||||
extra_hosts:
|
||||
@@ -93,7 +93,7 @@ services:
|
||||
extra_hosts:
|
||||
- consul:${DOCKER_HOST_INET}
|
||||
hostname: ${HOSTNAME}
|
||||
image: ${DOCKER_REPOSITORY_INFRA_NODE}/registrator:${DOCKER_IMAGE_TAG}
|
||||
image: ${DOCKER_REPOSITORY_NODE}/registrator:${DOCKER_IMAGE_TAG}
|
||||
network_mode: host
|
||||
restart: always
|
||||
volumes:
|
||||
|
||||
@@ -1,2 +1,4 @@
|
||||
services ?= elastic memcached mysql rabbitmq redis
|
||||
|
||||
# target services: Fire stack-service-up
|
||||
services: stack-services-up;
|
||||
|
||||
Reference in New Issue
Block a user