From b665296f2c1105e5199b64272b0b16c287399be8 Mon Sep 17 00:00:00 2001 From: Yann Autissier Date: Sat, 10 Sep 2022 18:31:23 +0200 Subject: [PATCH] ipfs v0.15.0 --- CHANGELOG.md | 36 +++++++++++++++++++++++++++++++++--- docker/ipfs/ipfs-config.sh | 14 +++++++++++++- docker/registrator/Dockerfile | 17 ++++++++++------- make/apps/build.mk | 4 ++-- make/apps/def.docker.mk | 10 +++++----- make/apps/def.mk | 2 +- make/apps/docker.mk | 2 +- make/def.docker.mk | 2 +- make/def.mk | 8 -------- make/end.mk | 7 +++++++ make/include.mk | 14 +++++++++----- stack/User.mk | 1 + stack/User/User.yml | 8 ++++---- stack/ipfs.mk | 4 ++-- stack/ipfs/.env.dist | 1 + stack/ipfs/ipfs.yml | 11 ++++++++++- stack/logs.mk | 2 +- stack/node.mk | 2 ++ stack/node/ipfs/ipfs.yml | 11 ++++++++++- stack/node/node.yml | 1 + 20 files changed, 114 insertions(+), 43 deletions(-) create mode 100644 make/end.mk diff --git a/CHANGELOG.md b/CHANGELOG.md index bc25937..58dc7f7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,8 @@ # CHANGELOG -## v1.0-beta - 2022-06-30 +## v0.1-beta - 2022-06-30 -Pre release, welcome ipfs +Beta release, welcome ipfs * add arm64 support * add ipfs stack @@ -10,8 +10,38 @@ Pre release, welcome ipfs * add zen stack * update docker-compose to v2.5.0 -## v1.0-alpha - 2021-07-14 +## v0.1-alpha - 2021-07-14 Public release, code is doc * update license to GPL as freedom should not allow evil to move faster than god + +## v0.0.1 - 2021-02-08 + +Initial import + +* import previous `infra` project +* remove any reference to previous project +* rename project to myos - make your own stack + +## 2020 + +* integration with drone.io +* makefile can be included in any project +* multi user/environment + +## 2018 + +The `infra` project + +* ansible : deploy docker to production +* aws : upload alpine iso to s3 and create ami +* packer : build alpine iso with docker daemon +* stack/services : docker stack for shared services +* subrepo : sync all git repositories with monorepo + +## 2017 + +Initial work + +* makefile for a monorepo with many docker-compose projects diff --git a/docker/ipfs/ipfs-config.sh b/docker/ipfs/ipfs-config.sh index 91550fb..cabb0bb 100755 --- a/docker/ipfs/ipfs-config.sh +++ b/docker/ipfs/ipfs-config.sh @@ -34,6 +34,8 @@ echo "${IPFS_ADDRESSES_GATEWAY_INET4}" |awk -F. '{ for ( i=1; i<=4; i++ ) if ($i || unset IPFS_ADDRESSES_GATEWAY_PORT ipfs config Addresses.Gateway "${IPFS_ADDRESSES_GATEWAY:-/ip4/${IPFS_ADDRESSES_GATEWAY_INET4:-127.0.0.1}/tcp/${IPFS_ADDRESSES_GATEWAY_PORT:-8080}}" +[ -n "${IPFS_ADDRESSES_NOANNOUNCE}" ] && ipfs config --json Addresses.NoAnnounce "${IPFS_ADDRESSES_NOANNOUNCE}" + ## api http headers ipfs config --json API.HTTPHeaders "${IPFS_API_HTTPHEADERS:-{ \"Access-Control-Allow-Credentials\": ${IPFS_API_HTTPHEADERS_ACA_CREDENTIALS:-null}, @@ -81,9 +83,19 @@ ipfs config --json Gateway.HTTPHeaders "${IPFS_GATEWAY_HTTPHEADERS:-{ ## routing [ -n "${IPFS_ROUTING_TYPE}" ] && ipfs config Routing.Type "${IPFS_ROUTING_TYPE}" +## reproviding local content to routing system +[ -n "${IPFS_REPROVIDER_INTERVAL}" ] && ipfs config Reprovider.Interval "${IPFS_REPROVIDER_INTERVAL}" +[ -n "${IPFS_REPROVIDER_STRATEGY}" ] && ipfs config Reprovider.Strategy "${IPFS_REPROVIDER_STRATEGY}" + ## swarm config -[ -n "${IPFS_SWARM_CONNMGR_LOWWATER}" ] && ipfs config --json Swarm.ConnMgr.LowWater "${IPFS_SWARM_CONNMGR_LOWWATER}" [ -n "${IPFS_SWARM_CONNMGR_HIGHWATER}" ] && ipfs config --json Swarm.ConnMgr.HighWater "${IPFS_SWARM_CONNMGR_HIGHWATER}" +[ -n "${IPFS_SWARM_CONNMGR_LOWWATER}" ] && ipfs config --json Swarm.ConnMgr.LowWater "${IPFS_SWARM_CONNMGR_LOWWATER}" +[ -n "${IPFS_SWARM_CONNMGR_TYPE}" ] && ipfs config --json Swarm.ConnMgr.Type "${IPFS_SWARM_CONNMGR_TYPE}" +[ -n "${IPFS_SWARM_DISABLENATPORTMAP}" ] && ipfs config --bool Swarm.DisableNatPortMap "${SWARM_DISABLENATPORTMAP}" +[ -n "${IPFS_SWARM_ENABLEHOLEPUNCHING}" ] && ipfs config --bool Swarm.EnableHolePunching "${SWARM_ENABLEHOLEPUNCHING}" +[ -n "${IPFS_SWARM_RELAYCLIENT_ENABLED}" ] && ipfs config --bool Swarm.RelayClient.Enabled "${SWARM_RELAYCLIENT_ENABLED}" +[ -n "${IPFS_SWARM_RELAYSERVICE_ENABLED}" ] && ipfs config --bool Swarm.RelayService.Enabled "${SWARM_RELAYSERVICE_ENABLED}" +[ -n "${IPFS_SWARM_TRANSPORTS_NETWORK_RELAY}" ] && ipfs config --bool Swarm.Transports.Network.Relay "${SWARM_TRANSPORTS_NETWORK_RELAY}" ## REMOVE IPFS BOOTSTRAP for private usage [ ${IPFS_NETWORK:-public} = "public" ] || ipfs bootstrap rm --all diff --git a/docker/registrator/Dockerfile b/docker/registrator/Dockerfile index 720decc..e45e120 100644 --- a/docker/registrator/Dockerfile +++ b/docker/registrator/Dockerfile @@ -9,17 +9,20 @@ ENV GIT_AUTHOR_EMAIL=${GIT_AUTHOR_EMAIL} ENV GIT_COMMITTER_NAME=${GIT_AUTHOR_NAME} ENV GIT_COMMITTER_EMAIL=${GIT_AUTHOR_EMAIL} -WORKDIR /go/src/github.com/auto1-oss/registrator/ +WORKDIR /go/src/github.com/gliderlabs/registrator/ RUN \ apk add --no-cache git \ - && git clone https://github.com/auto1-oss/registrator/ . \ - && git reset --hard 378a4ead31adfdae6550e112bfc186f1d1bed632 \ + && git clone https://github.com/gliderlabs/registrator/ . \ + && git reset --hard 4322fe00304d6de661865721b073dc5c7e750bd2 \ # -useIpFromNetwork \ - && git fetch origin pull/18/head \ - && git merge --no-edit 5ee80693b8057d92f261b87705445a1b989239ce \ + && git fetch origin pull/596/head \ + && git merge --no-edit 8d904c60949e310893a25c8af3636b0151334dd4 \ # fix SERVICE_CHECK_SCRIPT - && git fetch origin pull/19/head \ - && git merge --no-edit 9cfdfbee07dc6153af70f032eefc848af101fa7d \ + && git fetch origin pull/686/head \ + && git merge --no-edit 097305157a6a2c0c236fa430c17498c895536782 \ + && go mod init \ + && go mod tidy \ + && go mod vendor \ && CGO_ENABLED=0 GOOS=linux go build \ -a -installsuffix cgo \ -ldflags "-X main.Version=$(cat VERSION)" \ diff --git a/make/apps/build.mk b/make/apps/build.mk index 2383311..d4a28ba 100644 --- a/make/apps/build.mk +++ b/make/apps/build.mk @@ -6,7 +6,7 @@ .PHONY: build-env build-env: SERVICE ?= $(DOCKER_SERVICE) build-env: bootstrap - $(call docker-compose-exec,$(SERVICE), \ + $(call docker-compose-exec-sh,$(SERVICE), \ rm -f .env \ && make .env ENV=$(ENV) \ && printf 'BUILD=true\n' >> .env \ @@ -26,7 +26,7 @@ build-init: .PHONY: build-shared build-shared: SERVICE ?= $(DOCKER_SERVICE) build-shared: bootstrap - $(call docker-compose-exec,$(SERVICE), \ + $(call docker-compose-exec-sh,$(SERVICE), \ mkdir -p /$(notdir $(SHARED)) \ && $(foreach folder,$(SHARED_FOLDERS), \ rm -rf $(folder) \ diff --git a/make/apps/def.docker.mk b/make/apps/def.docker.mk index 7d0b16e..8fef52c 100644 --- a/make/apps/def.docker.mk +++ b/make/apps/def.docker.mk @@ -1,4 +1,4 @@ -CMDS += docker-compose-exec docker-run docker-run-% +CMDS += docker-run docker-run-% COMPOSE_ARGS ?= --ansi auto COMPOSE_FILE ?= $(wildcard docker/docker-compose.yml $(foreach file,$(patsubst docker/docker-compose.%,%,$(basename $(wildcard docker/docker-compose.*.yml))),$(if $(filter true,$(COMPOSE_FILE_$(file)) $(COMPOSE_FILE_$(call UPPERCASE,$(file)))),docker/docker-compose.$(file).yml))) COMPOSE_FILE_$(ENV) ?= true @@ -11,7 +11,7 @@ else COMPOSE_FILE_APP ?= true endif COMPOSE_IGNORE_ORPHANS ?= false -COMPOSE_PROJECT_NAME ?= $(PROJECT_NAME)$(addprefix _,$(subst /,,$(subst -,,$(APP_PATH)))) +COMPOSE_PROJECT_NAME ?= $(USER)-$(APP)-$(ENV)$(addprefix -,$(subst /,,$(subst -,,$(APP_PATH)))) COMPOSE_SERVICE_NAME ?= $(subst _,-,$(COMPOSE_PROJECT_NAME)) COMPOSE_VERSION ?= 2.5.0 CONTEXT += COMPOSE_FILE DOCKER_REPOSITORY @@ -63,9 +63,9 @@ define docker-compose $(if $(DOCKER_RUN),$(call docker-build,$(MYOS)/docker/compose,docker/compose:$(COMPOSE_VERSION))) $(if $(COMPOSE_FILE),$(call run,$(DOCKER_COMPOSE) $(patsubst %,-f %,$(COMPOSE_FILE)) -p $(if $(filter node,$(firstword $(subst /, ,$(STACK)))),$(NODE_COMPOSE_PROJECT_NAME),$(if $(filter User,$(firstword $(subst /, ,$(STACK)))),$(USER_COMPOSE_PROJECT_NAME),$(COMPOSE_PROJECT_NAME))) $(1))) endef -# function docker-compose-exec: Run docker-compose-exec with arg 2 in service 1 -define docker-compose-exec - $(call INFO,docker-compose-exec,$(1)$(comma) $(2)) +# function docker-compose-exec-sh: Run docker-compose-exec sh -c 'arg 2' in service 1 +define docker-compose-exec-sh + $(call INFO,docker-compose-exec-sh,$(1)$(comma) $(2)) $(if $(DOCKER_RUN),$(call docker-build,$(MYOS)/docker/compose,docker/compose:$(COMPOSE_VERSION))) $(if $(COMPOSE_FILE),$(call run,$(DOCKER_COMPOSE) $(patsubst %,-f %,$(COMPOSE_FILE)) -p $(if $(filter node,$(firstword $(subst /, ,$(STACK)))),$(NODE_COMPOSE_PROJECT_NAME),$(if $(filter User,$(firstword $(subst /, ,$(STACK)))),$(USER_COMPOSE_PROJECT_NAME),$(COMPOSE_PROJECT_NAME))) exec -T $(1) sh -c '$(2)')) endef diff --git a/make/apps/def.mk b/make/apps/def.mk index 839e0c8..98942b7 100644 --- a/make/apps/def.mk +++ b/make/apps/def.mk @@ -23,7 +23,7 @@ ENV_VARS += APP_DIR APP_DOMAIN APP_HOST APP_PATH APP_URL MOUNT_NFS ?= false NFS_CONFIG ?= addr=$(NFS_HOST),actimeo=3,intr,noacl,noatime,nocto,nodiratime,nolock,soft,rsize=32768,wsize=32768,tcp,rw,vers=3 NFS_HOST ?= host.docker.internal -PROJECT_NAME ?= $(USER)_$(APP)_$(ENV) +PROJECT_NAME ?= $(COMPOSE_PROJECT_NAME) SERVICE_NAME ?= $(COMPOSE_SERVICE_NAME) SERVICE_VERSION ?= $(BUILD_DATE)-$(VERSION) SERVICES ?= $(DOCKER_SERVICES) diff --git a/make/apps/docker.mk b/make/apps/docker.mk index d47f571..4b29e68 100644 --- a/make/apps/docker.mk +++ b/make/apps/docker.mk @@ -52,7 +52,7 @@ docker-compose-down: .PHONY: docker-compose-exec docker-compose-exec: SERVICE ?= $(DOCKER_SERVICE) docker-compose-exec: - $(call docker-compose-exec,$(SERVICE),$(ARGS)) || true + $(call docker-compose-exec-sh,$(SERVICE),$(ARGS)) || true # target docker-compose-logs: Call docker-compose logs SERVICE .PHONY: docker-compose-logs diff --git a/make/def.docker.mk b/make/def.docker.mk index 2319a47..5f6189e 100644 --- a/make/def.docker.mk +++ b/make/def.docker.mk @@ -18,7 +18,7 @@ NODE_COMPOSE_PROJECT_NAME ?= node NODE_COMPOSE_SERVICE_NAME ?= $(subst _,-,$(NODE_COMPOSE_PROJECT_NAME)) NODE_DOCKER_REPOSITORY ?= $(subst -,/,$(subst _,/,$(NODE_COMPOSE_PROJECT_NAME))) NODE_DOCKER_VOLUME ?= $(NODE_COMPOSE_PROJECT_NAME)_myos -USER_COMPOSE_PROJECT_NAME ?= $(USER)_$(ENV) +USER_COMPOSE_PROJECT_NAME ?= $(USER)-$(ENV) USER_COMPOSE_SERVICE_NAME ?= $(subst _,-,$(USER_COMPOSE_PROJECT_NAME)) USER_DOCKER_IMAGE ?= $(USER_DOCKER_REPOSITORY)/myos:${DOCKER_IMAGE_TAG} USER_DOCKER_NAME ?= $(USER_COMPOSE_PROJECT_NAME)-myos diff --git a/make/def.mk b/make/def.mk index e47134e..0ae7102 100644 --- a/make/def.mk +++ b/make/def.mk @@ -317,11 +317,3 @@ $(foreach env,$(ENV_LIST),$(eval TARGET := %\:$(env)) $(eval ASSIGN_ENV := ENV:= # set ENV=env for targets ending with @env $(foreach env,$(ENV_LIST),$(eval %@$(env): ENV:=$(env))) - -# Accept arguments for CMDS targets and turn them into do-nothing targets -ifneq ($(filter $(CMDS),$(firstword $(MAKECMDGOALS))),) -ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS)) -ARGS := $(subst :,\:,$(ARGS)) -ARGS := $(subst &,\&,$(ARGS)) -$(eval $(ARGS):;@:) -endif diff --git a/make/end.mk b/make/end.mk new file mode 100644 index 0000000..885b89f --- /dev/null +++ b/make/end.mk @@ -0,0 +1,7 @@ +# Accept arguments for CMDS targets and turn them into do-nothing targets +ifneq ($(filter $(CMDS),$(firstword $(MAKECMDGOALS))),) +ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS)) +ARGS := $(subst :,\:,$(ARGS)) +ARGS := $(subst &,\&,$(ARGS)) +$(eval $(ARGS):;@:) +endif diff --git a/make/include.mk b/make/include.mk index 3bc5cf5..db9c31f 100644 --- a/make/include.mk +++ b/make/include.mk @@ -5,17 +5,21 @@ MAKE_DIR := $(patsubst %/,%,$(dir $(lastword $(MAKEFILE_LIST)))) # variable MAKE_FILE: Name of this file MAKE_FILE := $(notdir $(lastword $(MAKEFILE_LIST))) -# variable MAKE_FILES: List of first files to load -MAKE_FILES := env.mk def.mk $(wildcard def.*.mk) -## it includes $(MAKE_DIR)/$(MAKE_FILES) -include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILES))) +# variable MAKE_FIRST: List of first files to load +MAKE_FIRST := env.mk def.mk $(wildcard def.*.mk) +# variable MAKE_LATEST: List of latest files to load +MAKE_LATEST := end.mk +## it includes $(MAKE_DIR)/$(MAKE_FIRST) +include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FIRST))) ## it includes $(MAKE_DIR)/*/def.mk $(MAKE_DIR)/*/def.*.mk include $(foreach subdir,$(MAKE_SUBDIRS),$(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk)) ## it includes def.mk def.*.mk */def.mk */def.*.mk include $(wildcard def.mk def.*.mk) $(filter-out $(wildcard $(MAKE_DIR)/*.mk),$(wildcard */def.mk */def.*.mk)) ## it includes $(MAKE_DIR)/*.mk -include $(filter-out $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILE) $(MAKE_FILES))),$(wildcard $(MAKE_DIR)/*.mk)) +include $(filter-out $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_FILE) $(MAKE_FIRST) $(MAKE_LATEST))),$(wildcard $(MAKE_DIR)/*.mk)) ## it includes $(MAKE_DIR)/*/*.mk include $(foreach subdir,$(MAKE_SUBDIRS),$(filter-out $(wildcard $(MAKE_DIR)/$(subdir)/def.mk $(MAKE_DIR)/$(subdir)/def.*.mk),$(wildcard $(MAKE_DIR)/$(subdir)/*.mk))) ## it includes *.mk */*.mk include $(filter-out $(wildcard def.mk def.*.mk),$(wildcard *.mk)) $(filter-out $(wildcard $(MAKE_DIR)/*.mk */def.mk */def.*.mk),$(wildcard */*.mk)) +## it includes $(MAKE_DIR)/$(MAKE_LATEST) +include $(wildcard $(patsubst %,$(MAKE_DIR)/%,$(MAKE_LATEST))) diff --git a/stack/User.mk b/stack/User.mk index b47de52..f6e47db 100644 --- a/stack/User.mk +++ b/stack/User.mk @@ -1,3 +1,4 @@ +CMDS += user-exec user-exec:% user-exec@% user-run user-run:% user-run@% User ?= User/User # target bootstrap-stack-User: Fire docker-network-create diff --git a/stack/User/User.yml b/stack/User/User.yml index 3c88ee4..296dcc8 100644 --- a/stack/User/User.yml +++ b/stack/User/User.yml @@ -11,10 +11,10 @@ services: - IPFS_VERSION=${IPFS_VERSION} - UID=${UID} - USER=${USER} - - SSH_BASTION_HOSTNAME=${SSH_BASTION_HOSTNAME} - - SSH_BASTION_USERNAME=${SSH_BASTION_USERNAME} - - SSH_PUBLIC_HOSTS=${SSH_PUBLIC_HOSTS} - - SSH_PRIVATE_IP_RANGE=${SSH_PRIVATE_IP_RANGE} + - SSH_BASTION_HOSTNAME=${SSH_BASTION_HOSTNAME:-} + - SSH_BASTION_USERNAME=${SSH_BASTION_USERNAME:-} + - SSH_PUBLIC_HOSTS=${SSH_PUBLIC_HOSTS:-} + - SSH_PRIVATE_IP_RANGE=${SSH_PRIVATE_IP_RANGE:-} context: ../.. dockerfile: docker/myos/Dockerfile container_name: ${USER_DOCKER_NAME} diff --git a/stack/ipfs.mk b/stack/ipfs.mk index 14d2588..fb51f76 100644 --- a/stack/ipfs.mk +++ b/stack/ipfs.mk @@ -1,6 +1,6 @@ -ENV_VARS += IPFS_PROFILE IPFS_VERSION +ENV_VARS += IPFS_DAEMON_ARGS IPFS_PROFILE IPFS_VERSION IPFS_PROFILE ?= $(if $(filter-out amd64 x86_64,$(PROCESSOR_ARCHITECTURE)),lowpower,server) -IPFS_VERSION ?= 0.14.0 +IPFS_VERSION ?= 0.15.0 .PHONY: bootstrap-stack-ipfs bootstrap-stack-ipfs: ~/.ipfs diff --git a/stack/ipfs/.env.dist b/stack/ipfs/.env.dist index 134f43b..ad4d9ca 100644 --- a/stack/ipfs/.env.dist +++ b/stack/ipfs/.env.dist @@ -1,5 +1,6 @@ IPFS_ADDRESSES_API_DOMAIN=${DOCKER_NETWORK_PRIVATE} IPFS_ADDRESSES_GATEWAY_INET4=0.0.0.0 +IPFS_DAEMON_ARGS=--enable-gc --migrate IPFS_IPNS_USEPUBSUB=true IPFS_LOGGING=error IPFS_PUBSUB_ENABLE=true diff --git a/stack/ipfs/ipfs.yml b/stack/ipfs/ipfs.yml index d6f69f2..a649c0a 100644 --- a/stack/ipfs/ipfs.yml +++ b/stack/ipfs/ipfs.yml @@ -9,7 +9,7 @@ services: - UID=${UID} context: ../.. dockerfile: docker/ipfs/Dockerfile - command: daemon --agent-version-suffix=${COMPOSE_PROJECT_NAME} --enable-gc --migrate + command: daemon --agent-version-suffix=${COMPOSE_PROJECT_NAME} ${IPFS_DAEMON_ARGS} cpus: 0.5 environment: - IPFS_ADDRESSES_API=${IPFS_ADDRESSES_API:-} @@ -20,6 +20,7 @@ services: - IPFS_ADDRESSES_GATEWAY_DOMAIN=${IPFS_ADDRESSES_GATEWAY_DOMAIN:-} - IPFS_ADDRESSES_GATEWAY_INET4=${IPFS_ADDRESSES_GATEWAY_INET4:-} - IPFS_ADDRESSES_GATEWAY_PORT=${IPFS_ADDRESSES_GATEWAY_PORT:-} + - IPFS_ADDRESSES_NOANNOUNCE=${IPFS_ADDRESSES_NOANNOUNCE:-} - IPFS_API_HTTPHEADERS=${IPFS_API_HTTPHEADERS:-} - IPFS_API_HTTPHEADERS_ACA_CREDENTIALS=${IPFS_API_HTTPHEADERS_ACA_CREDENTIALS:-} - IPFS_API_HTTPHEADERS_ACA_HEADERS=${IPFS_API_HTTPHEADERS_ACA_HEADERS:-} @@ -43,8 +44,16 @@ services: - IPFS_PUBSUB_ENABLE=${IPFS_PUBSUB_ENABLE:-} - IPFS_PUBSUB_ROUTER=${IPFS_PUBSUB_ROUTER:-} - IPFS_ROUTING_TYPE=${IPFS_ROUTING_TYPE:-} + - IPFS_REPROVIDER_INTERVAL=${IPFS_REPROVIDER_INTERVAL:-} + - IPFS_REPROVIDER_STRATEGY=${IPFS_REPROVIDER_STRATEGY:-} - IPFS_SWARM_CONNMGR_HIGHWATER=${IPFS_SWARM_CONNMGR_HIGHWATER:-} - IPFS_SWARM_CONNMGR_LOWWATER=${IPFS_SWARM_CONNMGR_LOWWATER:-} + - IPFS_SWARM_CONNMGR_TYPE=${IPFS_SWARM_CONNMGR_TYPE:-} + - IPFS_SWARM_DISABLENATPORTMAP=${IPFS_SWARM_DISABLENATPORTMAP:-} + - IPFS_SWARM_ENABLEHOLEPUNCHING=${IPFS_SWARM_ENABLEHOLEPUNCHING:-} + - IPFS_SWARM_RELAYCLIENT_ENABLED=${IPFS_SWARM_RELAYCLIENT_ENABLED:-} + - IPFS_SWARM_RELAYSERVICE_ENABLED=${IPFS_SWARM_RELAYSERVICE_ENABLED:-} + - IPFS_SWARM_TRANSPORTS_NETWORK_RELAY=${IPFS_SWARM_TRANSPORTS_NETWORK_RELAY:-} image: ${DOCKER_REPOSITORY}/ipfs:${DOCKER_IMAGE_TAG} labels: - SERVICE_4001_CHECK_TCP=true diff --git a/stack/logs.mk b/stack/logs.mk index a7f32cf..0140657 100644 --- a/stack/logs.mk +++ b/stack/logs.mk @@ -3,4 +3,4 @@ logs ?= sematext/logagent # target app-build-logagent: Exec 'rm -Rf /root/.npm /log-buffer/*' in docker SERVICE .PHONY: app-build-logagent app-build-logagent: - $(call make,docker-compose-exec ARGS='rm -Rf /root/.npm /log-buffer/*' SERVICE=logagent) + $(call docker-compose-exec-sh,logagent,rm -Rf /root/.npm /log-buffer/*) diff --git a/stack/node.mk b/stack/node.mk index 5cb5b8f..2315d38 100644 --- a/stack/node.mk +++ b/stack/node.mk @@ -1,3 +1,4 @@ +CMDS += node-exec stack-node-exec node-exec:% node-exec@% node-run node-run:% node-run@% node ?= node/node ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET4 DOCKER_INTERNAL_DOCKER_HOST @@ -10,6 +11,7 @@ bootstrap-stack-node: docker-network-create-$(DOCKER_NETWORK_PUBLIC) node-ssl-ce node: stack-node-up # target node-%; Fire target stack-node-% +.PHONY: node-% node-%: stack-node-%; # target node-ssl-certs: Create ${DOMAIN}.key.pem and ${DOMAIN}.crt.pem files diff --git a/stack/node/ipfs/ipfs.yml b/stack/node/ipfs/ipfs.yml index efddee9..7d09690 100644 --- a/stack/node/ipfs/ipfs.yml +++ b/stack/node/ipfs/ipfs.yml @@ -8,7 +8,7 @@ services: - IPFS_VERSION=${IPFS_VERSION} context: ../.. dockerfile: docker/ipfs/Dockerfile - command: daemon --agent-version-suffix=${NODE_COMPOSE_PROJECT_NAME} --enable-gc --migrate + command: daemon --agent-version-suffix=${NODE_COMPOSE_PROJECT_NAME} ${IPFS_DAEMON_ARGS} container_name: ${NODE_COMPOSE_PROJECT_NAME}-ipfs cpus: 0.5 environment: @@ -20,6 +20,7 @@ services: - IPFS_ADDRESSES_GATEWAY_DOMAIN=${NODE_IPFS_ADDRESSES_GATEWAY_DOMAIN:-} - IPFS_ADDRESSES_GATEWAY_INET4=${NODE_IPFS_ADDRESSES_GATEWAY_INET4:-} - IPFS_ADDRESSES_GATEWAY_PORT=${NODE_IPFS_ADDRESSES_GATEWAY_PORT:-} + - IPFS_ADDRESSES_NOANNOUNCE=${NODE_IPFS_ADDRESSES_NOANNOUNCE:-} - IPFS_API_HTTPHEADERS=${NODE_IPFS_API_HTTPHEADERS:-} - IPFS_API_HTTPHEADERS_ACA_CREDENTIALS=${NODE_IPFS_API_HTTPHEADERS_ACA_CREDENTIALS:-} - IPFS_API_HTTPHEADERS_ACA_HEADERS=${NODE_IPFS_API_HTTPHEADERS_ACA_HEADERS:-} @@ -43,8 +44,16 @@ services: - IPFS_PUBSUB_ENABLE=${NODE_IPFS_PUBSUB_ENABLE:-} - IPFS_PUBSUB_ROUTER=${NODE_IPFS_PUBSUB_ROUTER:-} - IPFS_ROUTING_TYPE=${NODE_IPFS_ROUTING_TYPE:-} + - IPFS_REPROVIDER_INTERVAL=${NODE_IPFS_REPROVIDER_INTERVAL:-} + - IPFS_REPROVIDER_STRATEGY=${NODE_IPFS_REPROVIDER_STRATEGY:-} - IPFS_SWARM_CONNMGR_HIGHWATER=${NODE_IPFS_SWARM_CONNMGR_HIGHWATER:-} - IPFS_SWARM_CONNMGR_LOWWATER=${NODE_IPFS_SWARM_CONNMGR_LOWWATER:-} + - IPFS_SWARM_CONNMGR_TYPE=${NODE_IPFS_SWARM_CONNMGR_TYPE:-} + - IPFS_SWARM_DISABLENATPORTMAP=${NODE_IPFS_SWARM_DISABLENATPORTMAP:-} + - IPFS_SWARM_ENABLEHOLEPUNCHING=${NODE_IPFS_SWARM_ENABLEHOLEPUNCHING:-} + - IPFS_SWARM_RELAYCLIENT_ENABLED=${NODE_IPFS_SWARM_RELAYCLIENT_ENABLED:-} + - IPFS_SWARM_RELAYSERVICE_ENABLED=${NODE_IPFS_SWARM_RELAYSERVICE_ENABLED:-} + - IPFS_SWARM_TRANSPORTS_NETWORK_RELAY=${NODE_IPFS_SWARM_TRANSPORTS_NETWORK_RELAY:-} image: ${NODE_DOCKER_REPOSITORY}/ipfs:${DOCKER_IMAGE_TAG} labels: - SERVICE_4001_CHECK_TCP=true diff --git a/stack/node/node.yml b/stack/node/node.yml index 151f8f2..cd12fd5 100644 --- a/stack/node/node.yml +++ b/stack/node/node.yml @@ -92,6 +92,7 @@ services: - consul environment: - CONSUL_HTTP_TOKEN=${NODE_CONSUL_HTTP_TOKEN} + - GL_DISABLE_VERSION_CHECK=true extra_hosts: - consul:${DOCKER_INTERNAL_DOCKER_HOST} hostname: ${HOSTNAME}