lighten: remove stack and docker files from myos

This commit is contained in:
2025-12-17 04:21:22 +01:00
parent 6e982393ac
commit 4cd1aae963
386 changed files with 0 additions and 21630 deletions
-33
View File
@@ -1,33 +0,0 @@
ENV_VARS += USER_DOMAIN USER_HOST user_domain
MAKECMDARGS += user-exec user-exec:% user-exec@% user-run user-run:% user-run@%
USER_DOMAIN ?= $(patsubst %,$(USER).%,$(DOMAIN))
USER_HOME ?= $(shell cd ~ && pwd -P)
USER_HOST ?= $(if $(APP_HOST_MULTI_USER),$(patsubst %,$(USER).%,$(HOST)))$(USER_HOST_LB)
USER_HOST_LB ?= $(if $(USER_LB),$(space)$(HOST)$(if $(HOST_LB),$(space)$(DOMAIN)),$(if $(HOST_LB),$(space)$(USER_DOMAIN)))
USER_PATH ?= $(USER_PATH_PREFIX)
USER_URIS ?= $(patsubst %,%/$(USER_PATH),$(USER_HOST))
ifneq ($(RESU),)
ifeq ($(RESU_HOME),mail)
USER_HOME := /home/$(mail)
else ifeq ($(RESU_HOME),dns)
USER_HOME := /dns/$(resu.path)
endif
ifeq ($(RESU_HOST),true)
USER_HOST := $(patsubst %,$(RESU).%,$(USER_HOST))
else ifeq ($(RESU_PATH),true)
USER_PATH := $(USER_PATH)$(RESU)/
endif
endif
# target start-stack-User: Fire ssh-add
.PHONY: start-stack-User
start-stack-User: ssh-add
# target user: Fire start-stack-User if DOCKER_RUN or fire start-stack-User
.PHONY: User user
User user: $(if $(DOCKER_RUN),stack-User-up,start-stack-User)
# target User-% user-%; Fire target stack-User-%
.PHONY: User-% user-%
User-% user-%: stack-User-%;
-51
View File
@@ -1,51 +0,0 @@
version: '3.6'
services:
myos:
build:
args:
- DOCKER_BUILD_DIR=docker/myos
- GID=${GID}
- GIT_AUTHOR_NAME=${GIT_AUTHOR_NAME}
- GIT_AUTHOR_EMAIL=${GIT_AUTHOR_EMAIL}
- 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:-}
context: ../..
dockerfile: docker/myos/Dockerfile
container_name: ${USER_DOCKER_NAME}
environment:
- ENV=${ENV}
- RC_00_SOURCE=${USER_RC_SOURCE:-/etc/profile.d/rc_functions.sh}
- RC_01_PS1_SET=${USER_RC_PS1_SET:-true}
- RC_02_PROMPT_SET=${USER_RC_PROMPT_SET:-true}
- RC_03_SSH_ADD=${USER_RC_SSH_ADD:-true}
- RC_04_TMUX_ATTACH=${USER_RC_TMUX_ATTACH:-false}
- RC_05_SCREEN_ATTACH=${USER_RC_SCREEN_ATTACH:-true}
- SHELL=${DOCKER_SHELL}
image: ${USER_DOCKER_IMAGE}
networks:
- private
restart: always
user: ${UID}:${GID}
volumes:
- ${HOME}:${HOME}:cached
- sources:${MONOREPO_DIR}:cached
- user:/tmp/ssh-agent
working_dir: ${MONOREPO_DIR}
volumes:
sources:
driver: local
driver_opts:
type: none
device: ${MONOREPO_DIR}
o: bind
name: ${USER}_sources
user:
external: true
name: ${USER_DOCKER_VOLUME}
-15
View File
@@ -1,15 +0,0 @@
ENV_VARS += USER_IPFS_API_HTTPHEADERS_ACA_ORIGIN USER_IPFS_LETSENCRYPT_HOST USER_IPFS_PATH USER_IPFS_SERVICE_5001_TAGS USER_IPFS_SERVICE_8080_TAGS
USER_IPFS_API_HTTPHEADERS_ACA_ORIGIN ?= [$(call patsublist,%,"https://%",$(patsubst %/,%,$(USER_IPFS_SERVICE_8080_URIS)))]
USER_IPFS_LETSENCRYPT_HOST ?= $(subst $(space),$(comma),$(call uri,USER_IPFS,,$(USER_HOST)))
USER_IPFS_PATH ?= $(USER_HOME)/.ipfs
USER_IPFS_SERVICE_NAME ?= ipfs
USER_IPFS_SERVICE_5001_PATH ?= api/
USER_IPFS_SERVICE_5001_TAGS ?= $(or $(USER_IPFS_SERVICE_5001_TAGS_LOCALHOST),$(USER_IPFS_SERVICE_5001_TAGS_URIS),$(USER_IPFS_SERVICE_5001_TAGS_PROXY_TCP))
USER_IPFS_SERVICE_5001_TAGS_LOCALHOST ?= $(filter %.localhost/$(USER_PATH)$(USER_IPFS_SERVICE_5001_PATH)$(url_suffix),$(call tagprefix,USER_IPFS,5001))
USER_IPFS_SERVICE_5001_TAGS_PROXY_TCP ?= $(call patsublist,%,urlprefix-% proxy=tcp,$(USER_IPFS_SERVICE_PROXY_TCP))
USER_IPFS_SERVICE_5001_TAGS_URIS ?= $(strip $(if $(call servicenvs,USER_IPFS,5001,URIS),$(call urlprefix,$(USER_IPFS_SERVICE_5001_PATH),,$(call servicenvs,USER_IPFS,5001,URIS))))
USER_IPFS_SERVICE_5001_URIS ?= $(call uri,USER_IPFS,5001,$(USER_URIS))
USER_IPFS_SERVICE_8080_OPTS ?= $(patsubst %/,%,$(if $(USER_PATH),strip=/$(USER_PATH)))
USER_IPFS_SERVICE_8080_PATH ?= ipfs/
USER_IPFS_SERVICE_8080_TAGS ?= $(call tagprefix,USER_IPFS,8080)
USER_IPFS_SERVICE_8080_URIS ?= $(call uri,USER_IPFS,8080,$(USER_URIS))
-98
View File
@@ -1,98 +0,0 @@
version: '3.6'
services:
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- GID=${GID}
- IPFS_VERSION=${IPFS_VERSION}
- UID=${UID}
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --agent-version-suffix=${COMPOSE_PROJECT_NAME} ${USER_IPFS_DAEMON_ARGS:---migrate=true}
container_name: ${COMPOSE_PROJECT_NAME}-ipfs
cpus: 0.5
environment:
- IPFS_ADDRESSES_API=${USER_IPFS_ADDRESSES_API:-}
- IPFS_ADDRESSES_API_DOMAIN=${USER_IPFS_ADDRESSES_API_DOMAIN:-${DOCKER_NETWORK_PUBLIC}}
- IPFS_ADDRESSES_API_INET4=${USER_IPFS_ADDRESSES_API_INET4:-}
- IPFS_ADDRESSES_API_PORT=${USER_IPFS_ADDRESSES_API_PORT:-}
- IPFS_ADDRESSES_GATEWAY=${USER_IPFS_ADDRESSES_GATEWAY:-}
- IPFS_ADDRESSES_GATEWAY_DOMAIN=${USER_IPFS_ADDRESSES_GATEWAY_DOMAIN:-}
- IPFS_ADDRESSES_GATEWAY_INET4=${USER_IPFS_ADDRESSES_GATEWAY_INET4:-0.0.0.0}
- IPFS_ADDRESSES_GATEWAY_PORT=${USER_IPFS_ADDRESSES_GATEWAY_PORT:-}
- IPFS_ADDRESSES_NOANNOUNCE=${USER_IPFS_ADDRESSES_NOANNOUNCE:-}
- IPFS_API_HTTPHEADERS=${USER_IPFS_API_HTTPHEADERS:-}
- IPFS_API_HTTPHEADERS_ACA_CREDENTIALS=${USER_IPFS_API_HTTPHEADERS_ACA_CREDENTIALS:-["true"]}
- IPFS_API_HTTPHEADERS_ACA_HEADERS=${USER_IPFS_API_HTTPHEADERS_ACA_HEADERS:-["X-Requested-With", "Range", "User-Agent"]}
- IPFS_API_HTTPHEADERS_ACA_METHODS=${USER_IPFS_API_HTTPHEADERS_ACA_METHODS:-["OPTIONS", "POST"]}
- IPFS_API_HTTPHEADERS_ACA_ORIGIN=${USER_IPFS_API_HTTPHEADERS_ACA_ORIGIN:-}
- IPFS_BOOTSTRAP=${USER_IPFS_BOOTSTRAP:-}
- IPFS_DATASTORE_GCPERIOD=${USER_IPFS_DATASTORE_GCPERIOD:-}
- IPFS_DISK_USAGE_PERCENT=${USER_IPFS_DISK_USAGE_PERCENT:-}
- IPFS_EXPERIMENTAL_ACCELERATEDDHTCLIENT=${USER_IPFS_EXPERIMENTAL_ACCELERATEDDHTCLIENT:-}
- IPFS_EXPERIMENTAL_FILESTOREENABLED=${USER_IPFS_EXPERIMENTAL_FILESTOREENABLED:-}
- IPFS_EXPERIMENTAL_GRAPHSYNCENABLED=${USER_IPFS_EXPERIMENTAL_GRAPHSYNCENABLED:-}
- IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING=${USER_IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING:-}
- IPFS_EXPERIMENTAL_P2PHTTPPROXY=${USER_IPFS_EXPERIMENTAL_P2PHTTPPROXY:-}
- IPFS_EXPERIMENTAL_STRATEGICPROVIDING=${USER_IPFS_EXPERIMENTAL_STRATEGICPROVIDING:-}
- IPFS_EXPERIMENTAL_URLSTOREENABLED=${USER_IPFS_EXPERIMENTAL_URLSTOREENABLED:-}
- IPFS_IDENTITY_PEERID=${USER_IPFS_IDENTITY_PEERID:-}
- IPFS_IDENTITY_PRIVKEY=${USER_IPFS_IDENTITY_PRIVKEY:-}
- IPFS_IPNS_REPUBLISHPERIOD=${USER_IPFS_IPNS_REPUBLISHPERIOD:-}
- IPFS_IPNS_RECORDLIFETIME=${USER_IPFS_IPNS_RECORDLIFETIME:-}
- IPFS_IPNS_USEPUBSUB=${USER_IPFS_IPNS_USEPUBSUB:-true}
- IPFS_LOGGING=${USER_IPFS_LOGGING:-error}
- IPFS_NETWORK=${USER_IPFS_NETWORK:-private}
- IPFS_PATH=${USER_IPFS_PATH:-~/.ipfs}
- IPFS_PROFILE=${USER_IPFS_PROFILE:-${IPFS_PROFILE}}
- IPFS_PUBSUB_ENABLE=${USER_IPFS_PUBSUB_ENABLE:-true}
- IPFS_PUBSUB_ROUTER=${USER_IPFS_PUBSUB_ROUTER:-gossipsub}
- IPFS_ROUTING_TYPE=${USER_IPFS_ROUTING_TYPE:-dht}
- IPFS_REPROVIDER_INTERVAL=${USER_IPFS_REPROVIDER_INTERVAL:-}
- IPFS_REPROVIDER_STRATEGY=${USER_IPFS_REPROVIDER_STRATEGY:-}
- IPFS_SWARM_CONNMGR_HIGHWATER=${USER_IPFS_SWARM_CONNMGR_HIGHWATER:-}
- IPFS_SWARM_CONNMGR_LOWWATER=${USER_IPFS_SWARM_CONNMGR_LOWWATER:-}
- IPFS_SWARM_CONNMGR_TYPE=${USER_IPFS_SWARM_CONNMGR_TYPE:-}
- IPFS_SWARM_DISABLENATPORTMAP=${USER_IPFS_SWARM_DISABLENATPORTMAP:-}
- IPFS_SWARM_ENABLEHOLEPUNCHING=${USER_IPFS_SWARM_ENABLEHOLEPUNCHING:-}
- IPFS_SWARM_KEY=${USER_IPFS_SWARM_KEY:-}
- IPFS_SWARM_RELAYCLIENT_ENABLED=${USER_IPFS_SWARM_RELAYCLIENT_ENABLED:-}
- IPFS_SWARM_RELAYSERVICE_ENABLED=${USER_IPFS_SWARM_RELAYSERVICE_ENABLED:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_RELAY=${USER_IPFS_SWARM_TRANSPORTS_NETWORK_RELAY:-}
- LETSENCRYPT_HOST=${USER_IPFS_LETSENCRYPT_HOST}
image: ${USER_DOCKER_REPOSITORY}/ipfs:${DOCKER_IMAGE_TAG}
healthcheck:
timeout: 55s
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${USER_COMPOSE_SERVICE_NAME}-ipfs-4001
- SERVICE_5001_CHECK_HTTP=${USER_IPFS_SERVICE_5001_CHECK_HTTP:-/api/v0/diag/sys}
- SERVICE_5001_CHECK_HTTP_METHOD=${USER_IPFS_SERVICE_5001_CHECK_HTTP_METHOD:-POST}
- SERVICE_5001_NAME=${USER_COMPOSE_SERVICE_NAME}-ipfs-5001
- SERVICE_5001_TAGS=${USER_IPFS_SERVICE_5001_TAGS:-}
- SERVICE_8080_CHECK_HTTP=${USER_IPFS_SERVICE_8080_CHECK_HTTP:-/ipfs/QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn}
- SERVICE_8080_NAME=${USER_COMPOSE_SERVICE_NAME}-ipfs-8080
- SERVICE_8080_TAGS=${USER_IPFS_SERVICE_8080_TAGS:-}
- SERVICE_8081_IGNORE=true
networks:
- private
- public
ports:
- 4001/tcp
- 4001/udp
- 5001/tcp
- 8080/tcp
restart: always
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- dns:/dns:delegated
- home:/home:delegated
volumes:
dns:
home:
-35
View File
@@ -1,35 +0,0 @@
version: '3.6'
services:
apprise:
image: caronc/apprise:latest
environment:
- APPRISE_STATELESS_URLS
- APPRISE_CONFIG_LOCK=${APPRISE_CONFIG_LOCK:-true}
labels:
- SERVICE_8000_CHECK_HTTP=${APPRISE_SERVICE_8000_CHECK_HTTP:-/}
- SERVICE_8000_NAME=${COMPOSE_SERVICE_NAME:-alerting}-apprise-8000
- SERVICE_8000_TAGS=${APPRISE_SERVICE_8000_TAGS:-urlprefix-localhost/apprise/*}
networks:
- public
restart: always
volumes:
- apprise:/config
apprise-webhook:
image: zzeneg/apprise-webhook
environment:
- APPRISE_URL=http://apprise:8000/notify
- TEMPLATE=alertmanager
labels:
# - SERVICE_3000_CHECK_HTTP=${APPRISE_WEBHOOK_SERVICE_3000_CHECK_HTTP:-/}
# - SERVICE_3000_CHECK_HTTP_METHOD=${APPRISE_WEBHOOK_SERVICE_3000_CHECK_HTTP_METHOD:-POST}
- SERVICE_3000_CHECK_TCP=${APPRISE_WEBHOOK_SERVICE_3000_CHECK_TCP:-true}
- SERVICE_3000_NAME=${COMPOSE_SERVICE_NAME:-alerting}-webhook-3000
- SERVICE_3000_TAGS=${APPRISE_WEBHOOK_SERVICE_3000_TAGS:-urlprefix-localhost/webhook/*}
networks:
- public
restart: always
volumes:
apprise:
-6
View File
@@ -1,6 +0,0 @@
ENV_VARS += NEXTCLOUD_MYSQL_DATABASE NEXTCLOUD_MYSQL_USER NEXTCLOUD_SERVICE_80_TAGS
NEXTCLOUD_SERVICE_NAME ?= nextcloud
NEXTCLOUD_SERVICE_80_NAME ?= $(NEXTCLOUD_SERVICE_NAME)
NEXTCLOUD_SERVICE_80_TAGS ?= $(call tagprefix,nextcloud,80)
NEXTCLOUD_MYSQL_DATABASE ?= $(COMPOSE_SERVICE_NAME)-$(NEXTCLOUD_SERVICE_NAME)
NEXTCLOUD_MYSQL_USER ?= $(NEXTCLOUD_MYSQL_DATABASE)
-25
View File
@@ -1,25 +0,0 @@
version: '3.6'
services:
nextcloud:
image: nextcloud:production-apache
environment:
- MYSQL_DATABASE=${NEXTCLOUD_MYSQL_DATABASE:-nextcloud}
- MYSQL_HOST=${NEXTCLOUD_MYSQL_HOST:-mysql}
- MYSQL_PASSWORD=${NEXTCLOUD_MYSQL_PASSWORD:-nextcloud}
- MYSQL_USER=${NEXTCLOUD_MYSQL_USER:-nextcloud}
labels:
- SERVICE_80_CHECK_TCP=true
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME}-nextcloud-80
- SERVICE_80_TAGS=${NEXTCLOUD_SERVICE_80_TAGS:-}
networks:
- private
- public
ports:
- 80
volumes:
- nextcloud:/var/www/html
restart: always
volumes:
nextcloud:
-4
View File
@@ -1,4 +0,0 @@
default ?= memcached mysql rabbitmq redis
# target default: Fire stack-default-up
default: stack-default-up;
-1
View File
@@ -1 +0,0 @@
develop ?= redmine
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone-runner-docker:
image: drone/drone-runner-docker:1.1
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone-runner-docker:
image: drone/drone-runner-docker:1.2
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone-runner-docker:
image: drone/drone-runner-docker:1.3
@@ -1,7 +0,0 @@
version: '3.6'
services:
drone-runner-docker:
environment:
- DRONE_DEBUG=true
- DRONE_TRACE=true
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone-runner-docker:
image: drone/drone-runner-docker:latest
-19
View File
@@ -1,19 +0,0 @@
version: '3.6'
services:
drone-runner-docker:
depends_on:
- drone
environment:
- DRONE_RPC_SECRET=${DRONE_RPC_SECRET}
- DRONE_RPC_HOST=${DRONE_RPC_HOST:-drone}
- DRONE_RPC_PROTO=${DRONE_RPC_PROTO:-http}
- DRONE_RUNNER_CAPACITY=${DRONE_RUNNER_CAPACITY:-1}
- DRONE_RUNNER_NAME=${DRONE_RUNNER_NAME:-drone-runner}
labels:
- SERVICE_3000_IGNORE=true
networks:
- private
restart: always
volumes:
- ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone:
image: drone/drone:1.6
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone:
image: drone/drone:1.7
-7
View File
@@ -1,7 +0,0 @@
version: '3.6'
services:
drone:
environment:
- DRONE_LOGS_DEBUG=true
- DRONE_LOGS_TRACE=true
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone:
image: drone/drone:latest
-10
View File
@@ -1,10 +0,0 @@
drone ?= drone/drone drone/drone-runner-docker drone/gc
DRONE_RUNNER_NAME ?= $(DRONE_RUNNER_SERVICE_NAME).$(firstword $(APP_HOST))
DRONE_RUNNER_SERVICE_NAME ?= drone-runner
DRONE_SERVER_HOST ?= $(DRONE_SERVICE_NAME).$(firstword $(APP_HOST))
DRONE_SERVICE_NAME ?= drone
DRONE_SERVICE_80_NAME ?= $(DRONE_SERVICE_NAME)
DRONE_SERVICE_80_TAGS ?= $(call tagprefix,drone,80)
DRONE_USER_CREATE ?= username:$(GIT_USER),admin:true
DRONE_USER_FILTER ?= $(GIT_USER)
ENV_VARS += DRONE_RUNNER_NAME DRONE_SERVER_HOST DRONE_USER_CREATE DRONE_USER_FILTER DRONE_SERVICE_80_TAGS
-41
View File
@@ -1,41 +0,0 @@
version: '3.6'
services:
drone:
environment:
- DRONE_GIT_ALWAYS_AUTH=${DRONE_GIT_ALWAYS_AUTH:-false}
- DRONE_GITEA_CLIENT_ID=${DRONE_GITEA_CLIENT_ID:-}
- DRONE_GITEA_CLIENT_SECRET=${DRONE_GITEA_CLIENT_SECRET:-}
- DRONE_GITEA_SERVER=${DRONE_GITEA_SERVER:-}
- DRONE_GITHUB_CLIENT_ID=${DRONE_GITHUB_CLIENT_ID:-}
- DRONE_GITHUB_CLIENT_SECRET=${DRONE_GITHUB_CLIENT_SECRET:-}
- DRONE_GITHUB_SERVER=${DRONE_GITHUB_SERVER:-https://github.com}
- DRONE_GITLAB_CLIENT_ID=${DRONE_GITLAB_CLIENT_ID:-}
- DRONE_GITLAB_CLIENT_SECRET=${DRONE_GITLAB_CLIENT_SECRET:-}
- DRONE_GITLAB_SERVER=${DRONE_GITLAB_SERVER:-https://gitlab.com}
- DRONE_LOGS_COLOR=${DRONE_LOGS_COLOR:-true}
- DRONE_LOGS_PRETTY=${DRONE_LOGS_PRETTY:-true}
- DRONE_PROMETHEUS_ANONYMOUS_ACCESS=${DRONE_PROMETHEUS_ANONYMOUS_ACCESS:-true}
- DRONE_RPC_SECRET=${DRONE_RPC_SECRET}
- DRONE_SERVER_HOST=${DRONE_SERVER_HOST:-drone}
- DRONE_SERVER_PROTO=${DRONE_SERVER_PROTO:-http}
- DRONE_TLS_AUTOCERT=${DRONE_TLS_AUTOCERT:-true}
- DRONE_USER_CREATE=${DRONE_USER_CREATE}
- DRONE_USER_FILTER=${DRONE_USER_FILTER}
labels:
- SERVICE_80_CHECK_TCP=true
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME}-drone-80
- SERVICE_80_TAGS=${DRONE_SERVICE_80_TAGS:-}
- SERVICE_443_IGNORE=true
networks:
- private
- public
ports:
- 80
- 443
restart: always
volumes:
- drone:/data
volumes:
drone:
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone-gc:
image: drone/gc:1.0
-8
View File
@@ -1,8 +0,0 @@
version: '3.6'
services:
drone-gc:
environment:
- GC_DEBUG=true
- GC_DEBUG_COLOR=true
- GC_DEBUG_PRETTY=true
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
drone-gc:
image: drone/gc:latest
-13
View File
@@ -1,13 +0,0 @@
version: '3.6'
services:
drone-gc:
image: drone/gc:latest
environment:
- GC_CACHE=${DRONE_GC_CACHE:-20gb}
- GC_INTERVAL=${DRONE_GC_INTERVAL:-5m}
networks:
- private
restart: always
volumes:
- ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock
-18
View File
@@ -1,18 +0,0 @@
ENV_VARS += DUNITER_UI_SERVICE_80_TAGS DUNITER_UI_WS_URL DUNITER_V2S_DUNITER_CHAIN_NAME DUNITER_V2S_DUNITER_NODE_NAME DUNITER_V2S_DUNITER_PUBLIC_ADDR DUNITER_V2S_DUNITER_PUBLIC_RPC DUNITER_V2S_DUNITER_PRUNING_PROFILE DUNITER_V2S_SERVICE_9615_TAGS DUNITER_V2S_SERVICE_9944_TAGS
DUNITER_UI_SERVICE_NAME ?= $(DUNITER_V2S_SERVICE_NAME)
DUNITER_UI_SERVICE_80_TAGS ?= $(call tagprefix,DUNITER_UI,80)
DUNITER_UI_WS_URL ?= $(DUNITER_V2S_DUNITER_PUBLIC_RPC)
DUNITER_V2S_DUNITER_CHAIN_NAME ?= gtest
DUNITER_V2S_DUNITER_NODE_NAME ?= $(USER)-$(DUNITER_V2S_DUNITER_CHAIN_NAME)-$(DUNITER_V2S_DUNITER_PRUNING_PROFILE)
DUNITER_V2S_DUNITER_PUBLIC_ADDR ?= /dns/$(DUNITER_V2S_SERVICE_HOST)/tcp/443/wss
DUNITER_V2S_DUNITER_PRUNING_PROFILE ?= default
DUNITER_V2S_DUNITER_PUBLIC_RPC ?= wss://$(DUNITER_V2S_SERVICE_HOST)/$(DUNITER_V2S_SERVICE_9944_PATH)
DUNITER_V2S_SERVICE_HOST ?= $(DUNITER_V2S_SERVICE_NAME).$(firstword $(APP_HOST))
DUNITER_V2S_SERVICE_NAME ?= $(DUNITER_V2S_DUNITER_CHAIN_NAME)
DUNITER_V2S_SERVICE_URI ?= $(DUNITER_V2S_SERVICE_NAME).$(firstword $(APP_URI))
DUNITER_V2S_SERVICE_9615_PATH ?= metrics/
DUNITER_V2S_SERVICE_9615_TAGS ?= $(call tagprefix,DUNITER_V2S,9615)
DUNITER_V2S_SERVICE_9933_PATH ?= http/
DUNITER_V2S_SERVICE_9933_TAGS ?= $(call tagprefix,DUNITER_V2S,9933)
DUNITER_V2S_SERVICE_9944_PATH ?= ws/
DUNITER_V2S_SERVICE_9944_TAGS ?= $(call tagprefix,DUNITER_V2S,9944)
-74
View File
@@ -1,74 +0,0 @@
# This is a minimal docker-compose.yml template for running a Duniter instance
# For more detailed examples, look at docker/compose folder
version: "3.5"
services:
oracle:
entrypoint: docker-distance-entrypoint
environment:
ORACLE_RPC_URL: "ws://v2s:9944"
ORACLE_RESULT_DIR: "/var/lib/duniter/chains/${DUNITER_V2S_DUNITER_CHAIN_NAME:-gtest}/distance/"
ORACLE_EXECUTION_INTERVAL: "1800"
ORACLE_MAX_DEPTH: "5"
ORACLE_LOG_LEVEL: "info"
image: duniter/duniter-v2s-gtest-1100:1000-0.12.0-amd64
labels:
- SERVICE_9615_IGNORE=true
- SERVICE_9944_IGNORE=true
- SERVICE_30333_IGNORE=true
networks:
- private
restart: always
volumes:
- v2s-data:/var/lib/duniter
ui:
environment:
- WS_URL=${DUNITER_UI_WS_URL:-ws://v2s:9944}
image: duniter/duniter-portal:latest
labels:
- SERVICE_80_CHECK_HTTP=${DUNITER_UI_SERVICE_80_CHECK_HTTP:-/}
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME}-ui-80
- SERVICE_80_TAGS=${DUNITER_UI_SERVICE_80_TAGS:-urlprefix-gtest.localhost/*}
networks:
- private
ports:
- 80
restart: always
v2s:
environment:
- DUNITER_CHAIN_NAME=${DUNITER_V2S_DUNITER_CHAIN_NAME:-gtest}
- DUNITER_LISTEN_ADDR=${DUNITER_V2S_DUNITER_LISTEN_ADDR:-/ip4/0.0.0.0/tcp/30333/ws}
- DUNITER_NODE_NAME=${DUNITER_V2S_DUNITER_NODE_NAME:-duniter_gtest_local}
- DUNITER_PRUNING_PROFILE=${DUNITER_V2S_DUNITER_PRUNING_PROFILE:-default}
- DUNITER_PUBLIC_ADDR=${DUNITER_V2S_DUNITER_PUBLIC_ADDR:-/dns/duniter.localhost/tcp/30333/ws}
- DUNITER_PUBLIC_RPC=${DUNITER_V2S_DUNITER_PUBLIC_RPC:-}
- DUNITER_VALIDATOR=${DUNITER_V2S_DUNITER_VALIDATOR:-false}
image: duniter/duniter-v2s-gtest-1100:1000-0.12.0-amd64
labels:
- SERVICE_9615_CHECK_TCP=true
- SERVICE_9615_NAME=${COMPOSE_SERVICE_NAME}-v2s-9615
- SERVICE_9615_TAGS=${DUNITER_V2S_SERVICE_9615_TAGS:-urlprefix-gtest.localhost/metrics/*}
- SERVICE_9944_CHECK_TCP=true
- SERVICE_9944_NAME=${COMPOSE_SERVICE_NAME}-v2s-9944
- SERVICE_9944_TAGS=${DUNITER_V2S_SERVICE_9944_TAGS:-urlprefix-gtest.localhost/ws/*}
- SERVICE_30333_CHECK_TCP=true
- SERVICE_30333_NAME=${COMPOSE_SERVICE_NAME}-v2s-30333
networks:
- private
ports:
# telemetry
- 9615
# rpc-ws
- 9944
# p2p
- 30333
volumes:
- v2s-data:/var/lib/duniter
restart: always
volumes:
v2s-data:
-21
View File
@@ -1,21 +0,0 @@
version: '3.6'
services:
apm-server-oss:
build:
args:
- DOCKER_BUILD_DIR=docker/elastic/apm-server-oss
context: ../..
dockerfile: docker/elastic/apm-server-oss/Dockerfile
image: ${DOCKER_REPOSITORY}/apm-server-oss:${DOCKER_IMAGE_TAG}
command: -c apm-server.yml --strict.perms=false -e -E output.elasticsearch.hosts=["${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"] -E output.elasticsearch.protocol=${ELASTICSEARCH_PROTOCOL:-http} -E output.elasticsearch.username=${ELASTICSEARCH_USERNAME} -E output.elasticsearch.password=${ELASTICSEARCH_PASSWORD} -E apm-server.register.ingest.pipeline.enabled=false
labels:
- SERVICE_8200_CHECK_HTTP=/
- SERVICE_8200_NAME=${COMPOSE_SERVICE_NAME}-apm-server-oss-8200
- SERVICE_8200_TAGS=${APM_SERVER_OSS_SERVICE_8200_TAGS}
networks:
- private
- public
ports:
- 8200
restart: always
-18
View File
@@ -1,18 +0,0 @@
version: '3.6'
services:
apm-server:
image: docker.elastic.co/apm/apm-server:7.4.2
command: -c apm-server.yml --strict.perms=false -e -E output.elasticsearch.hosts=["${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"] -E output.elasticsearch.protocol=${ELASTICSEARCH_PROTOCOL:-http} -E output.elasticsearch.username=${ELASTICSEARCH_USERNAME} -E output.elasticsearch.password=${ELASTICSEARCH_PASSWORD}
labels:
- SERVICE_8200_CHECK_HTTP=/
- SERVICE_8200_NAME=${COMPOSE_SERVICE_NAME}-apm-server-8200
- SERVICE_8200_TAGS=${APM_SERVER_SERVICE_8200_TAGS}
networks:
private:
aliases:
- apm.${DOCKER_NETWORK_PRIVATE}
public:
ports:
- 8200
restart: always
-6
View File
@@ -1,6 +0,0 @@
version: '3.6'
services:
curator:
depends_on:
- elasticsearch
-21
View File
@@ -1,21 +0,0 @@
version: '3.6'
services:
curator:
build:
args:
- DOCKER_BUILD_DIR=docker/elastic/curator
context: ../..
dockerfile: docker/elastic/curator/Dockerfile
environment:
- DEPLOY=${DEPLOY:-}
- HOSTS=${ELASTICSEARCH_PROTOCOL:-http}://${ELASTICSEARCH_HOST:-9200}
- LOGFORMAT=${CURATOR_LOGFORMAT:-default}
- LOGLEVEL=${CURATOR_LOGLEVEL:-INFO}
- MASTER_ONLY=${CURATOR_MASTER_ONLY:-False}
- PORT=${ELASTICSEARCH_PORT:-9200}
- TIMEOUT=${CURATOR_TIMEOUT:-30}
- USE_SSL=${CURATOR_USE_SSL:-False}
networks:
- private
restart: always
-14
View File
@@ -1,14 +0,0 @@
APM_SERVER_SERVICE_8200_NAME ?= apm-server
APM_SERVER_SERVICE_8200_TAGS ?= $(call tagprefix,apm-server,8200)
ELASTICSEARCH_SERVICE_9200_NAME ?= elasticsearch
ELASTICSEARCH_SERVICE_9200_TAGS ?= $(call tagprefix,elasticsearch,9200)
ENV_VARS += APM_SERVER_SERVICE_8200_TAGS ELASTICSEARCH_SERVICE_9200_TAGS KIBANA_SERVICE_5601_TAGS
KIBANA_SERVICE_NAME ?= kibana
KIBANA_SERVICE_5601_TAGS ?= $(call tagprefix,kibana,5601)
elastic ?= elastic/curator elastic/elasticsearch elastic/kibana
# target elasticsearch-delete-%: delete elasticsearch index %
.PHONY: elasticsearch-delete-%
elasticsearch-delete-%:
docker ps |awk '$$NF ~ /$(COMPOSE_PROJECT_NAME)-elasticsearch/' |sed 's/^.*:\([0-9]*\)->9200\/tcp.*$$/\1/' |while read port; do echo -e "DELETE /$* HTTP/1.0\n\n" |nc localhost $$port; done
-7
View File
@@ -1,7 +0,0 @@
version: '3.6'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:5.3.3
environment:
- discovery.zen.minimum_master_nodes=1
@@ -1,6 +0,0 @@
version: '3.6'
services:
elasticsearch:
environment:
- discovery.type=single-node
-7
View File
@@ -1,7 +0,0 @@
version: '3.6'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.4.2
environment:
- node.data=true
-5
View File
@@ -1,5 +0,0 @@
version: '3.6'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.6.2
-40
View File
@@ -1,40 +0,0 @@
version: '3.6'
services:
elasticsearch:
environment:
- ES_JAVA_OPTS=-Xmx1024m -Xms1024m
- xpack.security.enabled=false
- xpack.monitoring.enabled=false
- xpack.graph.enabled=false
- xpack.watcher.enabled=false
- cluster.name=${COMPOSE_SERVICE_NAME}
- network.host=0.0.0.0
- http.cors.enabled=true
- http.cors.allow-credentials=true
- http.cors.allow-methods=OPTIONS,HEAD,GET,POST,PUT,DELETE
- http.cors.max-age=0
- http.cors.allow-origin=*
- http.cors.allow-headers=X-Requested-With,X-Auth-Token,Content-Type,Content-Length
labels:
- SERVICE_9200_CHECK_HTTP=/
- SERVICE_9200_NAME=${COMPOSE_SERVICE_NAME}-elasticsearch-9200
- SERVICE_9200_TAGS=${ELASTICSEARCH_SERVICE_9200_TAGS}
- SERVICE_9300_CHECK_TCP=true
- SERVICE_9300_NAME=${COMPOSE_SERVICE_NAME}-elasticsearch-9300
networks:
- private
- public
ports:
- 9200
- 9300
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- elasticsearch:/usr/share/elasticsearch/data
restart: always
volumes:
elasticsearch:
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
kibana-oss:
image: docker.elastic.co/kibana/kibana-oss:7.4.2
environment:
- ELASTICSEARCH_HOSTS="${ELASTICSEARCH_PROTOCOL:-http}://${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"
- KIBANA_INDEX=.kibana-oss.${COMPOSE_SERVICE_NAME}
- SERVER_NAME=kibana-oss.${APP_HOST}
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
kibana-oss:
image: docker.elastic.co/kibana/kibana-oss:7.7.1
environment:
- ELASTICSEARCH_HOSTS="${ELASTICSEARCH_PROTOCOL:-http}://${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"
- KIBANA_INDEX=.kibana-oss.${COMPOSE_SERVICE_NAME}
- SERVER_NAME=kibana-oss.${APP_HOST}
-6
View File
@@ -1,6 +0,0 @@
version: '3.6'
services:
kibana-oss:
depends_on:
- elasticsearch
-14
View File
@@ -1,14 +0,0 @@
version: '3.6'
services:
kibana-oss:
labels:
- SERVICE_5601_CHECK_HTTP=/app/kibana
- SERVICE_5601_NAME=${COMPOSE_SERVICE_NAME}-kibana-oss-5601
- SERVICE_5601_TAGS=${KIBANA_OSS_SERVICE_5601_TAGS}
networks:
- private
- public
ports:
- 5601
restart: always
-7
View File
@@ -1,7 +0,0 @@
version: '3.6'
services:
kibana:
image: docker.elastic.co/kibana/kibana:5.3.3
environment:
- ELASTICSEARCH_URL="${ELASTICSEARCH_PROTOCOL:-http}://${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
kibana:
image: docker.elastic.co/kibana/kibana:7.4.2
environment:
- ELASTICSEARCH_HOSTS="${ELASTICSEARCH_PROTOCOL:-http}://${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"
- KIBANA_INDEX=.kibana.${COMPOSE_SERVICE_NAME}
- SERVER_NAME=kibana.${APP_HOST}
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
kibana:
image: docker.elastic.co/kibana/kibana:7.7.1
environment:
- ELASTICSEARCH_HOSTS="${ELASTICSEARCH_PROTOCOL:-http}://${ELASTICSEARCH_HOST:-elasticsearch}:${ELASTICSEARCH_PORT:-9200}"
- KIBANA_INDEX=.kibana.${COMPOSE_SERVICE_NAME}
- SERVER_NAME=kibana.${APP_HOST}
-6
View File
@@ -1,6 +0,0 @@
version: '3.6'
services:
kibana:
depends_on:
- elasticsearch
-14
View File
@@ -1,14 +0,0 @@
version: '3.6'
services:
kibana:
labels:
- SERVICE_5601_CHECK_HTTP=/app/kibana
- SERVICE_5601_NAME=${COMPOSE_SERVICE_NAME}-kibana-5601
- SERVICE_5601_TAGS=${KIBANA_SERVICE_5601_TAGS}
networks:
- private
- public
ports:
- 5601
restart: always
-7
View File
@@ -1,7 +0,0 @@
APM_SERVER_OSS_SERVICE_8200_NAME ?= apm-server-oss
APM_SERVER_OSS_SERVICE_8200_TAGS ?= $(call tagprefix,apm-server-oss,8200)
ENV_VARS += APM_SERVER_OSS_SERVICE_8200_TAGS KIBANA_OSS_SERVICE_5601_TAGS
KIBANA_OSS_SERVICE_5601_NAME ?= kibana-oss
KIBANA_OSS_SERVICE_5601_TAGS ?= $(call tagprefix,kibana-oss,5601)
elastic-oss ?= elastic/apm-server-oss elastic/curator elastic/elasticsearch elastic/kibana-oss
-3
View File
@@ -1,3 +0,0 @@
ENV_VARS += GRAFANA_SERVICE_3000_TAGS
GRAFANA_SERVICE_3000_NAME ?= grafana
GRAFANA_SERVICE_3000_TAGS ?= $(call tagprefix,grafana,3000)
-32
View File
@@ -1,32 +0,0 @@
version: '3.6'
services:
grafana:
build:
args:
- AWS_ACCESS_KEY=${GRAFANA_AWS_ACCESS_KEY:-${AWS_ACCESS_KEY_ID}}
- AWS_SECRET_KEY=${GRAFANA_AWS_SECRET_KEY:-${AWS_SECRET_ACCESS_KEY}}
- DOCKER_BUILD_DIR=docker/grafana
- MYSQL_GRAFANA_DB=${GRAFANA_MYSQL_GRAFANA_DB:-grafana}
- MYSQL_GRAFANA_PASSWORD=${GRAFANA_MYSQL_GRAFANA_PASSWORD:-grafana}
- MYSQL_GRAFANA_USER=${GRAFANA_MYSQL_GRAFANA_USER:-grafana}
context: ../..
dockerfile: docker/grafana/Dockerfile
environment:
- GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource
image: ${DOCKER_REPOSITORY}/grafana:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_3000_CHECK_TCP=true
- SERVICE_3000_NAME=${COMPOSE_SERVICE_NAME}-grafana-3000
- SERVICE_3000_TAGS=${GRAFANA_SERVICE_3000_TAGS}
networks:
- private
- public
ports:
- 3000
restart: always
volumes:
- grafana:/var/lib/grafana
volumes:
grafana:
-25
View File
@@ -1,25 +0,0 @@
services:
graphql-engine:
depends_on:
data-connector-agent:
condition: service_healthy
environment:
HASURA_GRAPHQL_METADATA_DEFAULTS: '{"backend_configs":{"dataconnector":{"athena":{"uri":"http://data-connector-agent:8081/api/v1/athena"},"mariadb":{"uri":"http://data-connector-agent:8081/api/v1/mariadb"},"mysql8":{"uri":"http://data-connector-agent:8081/api/v1/mysql"},"oracle":{"uri":"http://data-connector-agent:8081/api/v1/oracle"},"snowflake":{"uri":"http://data-connector-agent:8081/api/v1/snowflake"}}}}'
data-connector-agent:
image: hasura/graphql-data-connector:v2.46.0
restart: always
ports:
- 8081
environment:
QUARKUS_LOG_LEVEL: ERROR # FATAL, ERROR, WARN, INFO, DEBUG, TRACE
## https://quarkus.io/guides/opentelemetry#configuration-reference
QUARKUS_OPENTELEMETRY_ENABLED: "false"
## QUARKUS_OPENTELEMETRY_TRACER_EXPORTER_OTLP_ENDPOINT: http://jaeger:4317
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8081/api/v1/athena/health"]
interval: 5s
timeout: 10s
retries: 5
start_period: 5s
networks:
- private
-4
View File
@@ -1,4 +0,0 @@
ENV_VARS += HASURA_GRAPHQL_ENGINE_SERVICE_8080_TAGS
hasura := hasura/hasura hasura/postgres
HASURA_GRAPHQL_ENGINE_SERVICE_8080_NAME := hasura
HASURA_GRAPHQL_ENGINE_SERVICE_8080_TAGS := $(call tagprefix,hasura_graphql_engine,8080)
-26
View File
@@ -1,26 +0,0 @@
services:
graphql-engine:
image: hasura/graphql-engine:v2.46.0
ports:
- 8080
restart: always
environment:
## postgres database to store Hasura metadata
HASURA_GRAPHQL_METADATA_DATABASE_URL: ${HASURA_GRAPHQL_METADATA_DATABASE_URL:-postgres://${HASURA_POSTGRES_USER:-${POSTGRES_USER:-postgres}}:${HASURA_POSTGRES_PASSWORD:-${POSTGRES_PASSWORD:-postgres}}@postgres:5432/${HASURA_POSTGRES_DB:-${POSTGRES_DB:-postgres}}}
## this env var can be used to add the above postgres database to Hasura as a data source. this can be removed/updated based on your needs
PG_DATABASE_URL: ${HASURA_PG_DATABASE_URL:-postgres://${HASURA_POSTGRES_USER:-${POSTGRES_USER:-postgres}}:${HASURA_POSTGRES_PASSWORD:-${POSTGRES_PASSWORD:-postgres}}@postgres:5432/${HASURA_POSTGRES_DB:-${POSTGRES_DB:-postgres}}}
## enable the console served by server
HASURA_GRAPHQL_ENABLE_CONSOLE: ${HASURA_GRAPHQL_ENABLE_CONSOLE:-true} # set to "false" to disable console
## enable debugging mode. It is recommended to disable this in production
HASURA_GRAPHQL_DEV_MODE: ${HASURA_GRAPHQL_DEV_MODE:-true}
HASURA_GRAPHQL_ENABLED_LOG_TYPES: ${HASURA_GRAPHQL_ENABLED_LOG_TYPES:-startup, http-log, webhook-log, websocket-log, query-log}
## uncomment next line to run console offline (i.e load console assets from server instead of CDN)
HASURA_GRAPHQL_CONSOLE_ASSETS_DIR: ${HASURA_GRAPHQL_CONSOLE_ASSETS_DIR:-/srv/console-assets}
## uncomment next line to set an admin secret
HASURA_GRAPHQL_ADMIN_SECRET: ${HASURA_GRAPHQL_ADMIN_SECRET:-myadminsecretkey}
labels:
- SERVICE_8080_CHECK_HTTP=/
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME}-graphql-engine-8080
- SERVICE_8080_TAGS=${HASURA_GRAPHQL_ENGINE_SERVICE_8080_TAGS:-urlprefix-hasura.localhost/*}
networks:
- private
-23
View File
@@ -1,23 +0,0 @@
version: '3.6'
services:
postgres:
image: postgres:alpine
environment:
- POSTGRES_DB=${HASURA_POSTGRES_DB:-postgres}
- POSTGRES_HOST_AUTH_METHOD=${HASURA_POSTGRES_HOST_AUTH_METHOD:-trust}
- POSTGRES_PASSWORD=${HASURA_POSTGRES_PASSWORD:-postgres}
- POSTGRES_USER=${HASURA_POSTGRES_USER:-postgres}
labels:
- SERVICE_5432_CHECK_TCP=true
- SERVICE_5432_NAME=${COMPOSE_SERVICE_NAME}-postgres-5432
networks:
- private
ports:
- 5432
volumes:
- postgres:/var/lib/postgresql/data
restart: always
volumes:
postgres:
-5
View File
@@ -1,5 +0,0 @@
ENV_VARS += HOST_ACME_POST_HOOK HOST_ACME_PRE_HOOK
HOST_ACME_DOMAIN_PATH_VALID ?= $$(echo $${DOMAIN_PATH:-} |awk "'"/^[0-9a-z_\-\.+\/]+@[0-9a-z_\-\.]+\.[a-z0-9_\-\.\+\/]+$$/"'")
HOST_ACME_DOMAIN_CERT_MODULUS ?= $$(openssl x509 -in fullchain.cer -noout -modulus)
HOST_ACME_DOMAIN_KEY_MODULUS ?= $$(openssl rsa -in $${domain}.key -noout -modulus)
HOST_ACME_POST_HOOK ?= [ "$(HOST_ACME_DOMAIN_PATH_VALID)" ] && cp -a fullchain.cer /host/certs/$${domain}-cert.pem 2>/dev/null && [ "$(HOST_ACME_DOMAIN_CERT_MODULUS)" = "$(HOST_ACME_DOMAIN_KEY_MODULUS)" ] && cp -a $${domain}.key /host/certs/$${domain}-key.pem
-33
View File
@@ -1,33 +0,0 @@
version: '3.6'
services:
acme:
depends_on:
- nginx
environment:
- ACME_CA_URI=${HOST_ACME_CA_URI:-https://acme-v02.api.letsencrypt.org/directory}
- ACME_POST_HOOK=${HOST_ACME_POST_HOOK:-}
- ACME_PRE_HOOK=${HOST_ACME_PRE_HOOK:-}
- DEFAULT_EMAIL=${HOST_ACME_DEFAULT_EMAIL:-${DEFAULT_EMAIL:-${MAIL:-acme@localhost}}}
- LETSENCRYPT_SINGLE_DOMAIN_CERTS=${HOST_ACME_LETSENCRYPT_SINGLE_DOMAIN_CERTS:-true}
- LETSENCRYPT_TEST=${HOST_ACME_LETSENCRYPT_TEST:-}
image: pinidh/acme-companion:latest
networks:
- public
restart: unless-stopped
volumes_from:
- nginx
volumes:
- ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock:ro
- acme:/etc/acme.sh
- certs:/etc/nginx/certs
- html:/usr/share/nginx/html
- host:/host
volumes:
acme:
certs:
html:
host:
external: true
name: ${HOST_DOCKER_VOLUME}
-7
View File
@@ -1,7 +0,0 @@
ENV_VARS += HOST_APACHE_PHP5_SERVICE_80_TAGS HOST_APACHE_PHP5_VIRTUAL_ROOT
HOST_APACHE_PHP5_SERVICE_HOST ?= $(subst $(comma),$(space),$(HOST_APACHE_PHP5_VIRTUAL_HOST))
HOST_APACHE_PHP5_SERVICE_PATH ?= /
HOST_APACHE_PHP5_SERVICE_80_HOST ?= $(HOST_APACHE_PHP5_SERVICE_HOST)
HOST_APACHE_PHP5_SERVICE_80_TAGS ?= $(call tagprefix,HOST_APACHE_PHP5,80,host)
HOST_APACHE_PHP5_VIRTUAL_HOST ?= $(subst $(space),$(comma),$(APP_HOST))
HOST_APACHE_PHP5_VIRTUAL_ROOT ?= %-1/%-2/%-3
-11
View File
@@ -1,11 +0,0 @@
version: '3.6'
services:
apache-php5:
environment:
- DOCUMENT_ROOT=/var/www
volumes:
- www:/var/www
volumes:
www:
-31
View File
@@ -1,31 +0,0 @@
version: '3.6'
services:
apache-php5:
build:
args:
- DOCKER_BUILD_DIR=docker/apache/php5
context: ../..
dockerfile: docker/apache/php5/Dockerfile
domainname: ${DOMAINNAME}
environment:
- DOCUMENT_ROOT=${HOST_APACHE_PHP5_DOCUMENT_ROOT:-/web/html}
- VIRTUAL_ROOT=${HOST_APACHE_PHP5_VIRTUAL_ROOT:-%0}
hostname: ${HOSTNAME}
image: ${DOCKER_REPOSITORY:-apache-php5}/apache-php5:${DOCKER_IMAGE_TAG:-latest}
labels:
- SERVICE_80_CHECK_HTTP=${HOST_APACHE_PHP5_SERVICE_80_CHECK_HTTP:-/}
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME:-docker}-apache-php5-80
- SERVICE_80_TAGS=${HOST_APACHE_PHP5_SERVICE_80_TAGS:-urlprefix-localhost/*}
networks:
- public
ports:
- 80
restart: unless-stopped
volumes:
- backup:/backup
- web:/web
volumes:
backup:
web:
-11
View File
@@ -1,11 +0,0 @@
version: '3.6'
services:
autoheal:
container_name: ${HOST_COMPOSE_PROJECT_NAME}-autoheal
environment:
- AUTOHEAL_CONTAINER_LABEL=all
image: willfarrell/autoheal:latest
restart: always
volumes:
- ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock
-20
View File
@@ -1,20 +0,0 @@
version: "3.6"
services:
restic:
image: mazzolino/restic:1.1.1
hostname: ${HOSTNAME}
environment:
BACKUP_CRON: "30 3 * * *"
RESTIC_REPOSITORY: ${HOST_RESTIC_REPOSITORY}
RESTIC_PASSWORD: ${HOST_RESTIC_PASSWORD}
RESTIC_BACKUP_SOURCES: ${HOST_RESTIC_BACKUP_SOURCES:-/var/lib/docker/volumes}
RESTIC_BACKUP_TAGS: ${HOST_RESTIC_BACKUP_TAGS:-docker-volumes}
RESTIC_FORGET_ARGS: ${HOST_RESTIC_FORGET_ARGS:---prune --keep-last 14 --keep-daily 1}
TZ: ${HOST_TZ:-${TZ}}
volumes:
- restic:/root/.config
- /var/lib/docker/volumes:/var/lib/docker/volumes:ro
volumes:
restic:
-1
View File
@@ -1 +0,0 @@
HOST_CERTBOT_UFW_UPDATE ?= 53/udp
-26
View File
@@ -1,26 +0,0 @@
version: '3.6'
services:
certbot:
build:
args:
- DOCKER_BUILD_DIR=docker/certbot
context: ../..
dockerfile: docker/certbot/Dockerfile
command: start
container_name: ${HOST_COMPOSE_PROJECT_NAME}-certbot
domainname: ${DOMAINNAME}
extra_hosts:
- consul:${DOCKER_INTERNAL_DOCKER_HOST}
- ${HOSTNAME}.${DOMAINNAME} ${HOSTNAME}:${DOCKER_HOST_INET4}
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/certbot:${DOCKER_IMAGE_TAG}
network_mode: host
restart: always
volumes:
- host:/etc/letsencrypt
volumes:
host:
external: true
name: ${HOST_DOCKER_VOLUME}
-7
View File
@@ -1,7 +0,0 @@
ENV_VARS += HOST_CONSUL_ACL_TOKENS_MASTER HOST_CONSUL_HTTP_TOKEN HOST_CONSUL_SERVICE_8500_TAGS
HOST_CONSUL_ACL_TOKENS_MASTER ?= 01234567-89ab-cdef-0123-456789abcdef
HOST_CONSUL_HTTP_TOKEN ?= $(HOST_CONSUL_ACL_TOKENS_MASTER)
HOST_CONSUL_SERVICE_8500_AUTH ?= default
HOST_CONSUL_SERVICE_8500_NAME ?= consul
HOST_CONSUL_SERVICE_8500_TAGS ?= $(call tagprefix,HOST_CONSUL,8500)
HOST_CONSUL_UFW_UPDATE ?= 8500
-48
View File
@@ -1,48 +0,0 @@
version: '3.6'
services:
consul:
build:
args:
- CONSUL_VERSION=1.11.1
- DOCKER_BUILD_DIR=docker/consul
context: ../..
dockerfile: docker/consul/Dockerfile
container_name: ${HOST_COMPOSE_PROJECT_NAME}-consul
domainname: ${DOMAINNAME}
environment:
CONSUL_BIND_INTERFACE: '${DOCKER_HOST_IFACE:-eth0}'
CONSUL_CLIENT_INTERFACE: '${DOCKER_HOST_IFACE:-eth0}'
CONSUL_HTTP_TOKEN: '${HOST_CONSUL_HTTP_TOKEN:-01234567-89ab-cdef-0123-456789abcdef}'
CONSUL_LOCAL_CONFIG: '{ "log_level": "warn"
, "enable_script_checks": true
, "acl": { "enabled": true
, "default_policy": "deny"
, "down_policy": "extend-cache"
, "enable_token_persistence": true
, "tokens": { "initial_management": "${HOST_CONSUL_ACL_TOKENS_MASTER:-01234567-89ab-cdef-0123-456789abcdef}"
, "agent": "${HOST_CONSUL_HTTP_TOKEN:-01234567-89ab-cdef-0123-456789abcdef}"
}
}
}'
extra_hosts:
- ${HOSTNAME}.${DOMAINNAME} ${HOSTNAME}:${DOCKER_HOST_INET4}
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/consul:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_8300_IGNORE=true
- SERVICE_8301_IGNORE=true
- SERVICE_8302_IGNORE=true
- SERVICE_8500_CHECK_HTTP=/v1/health/service/consul
- SERVICE_8500_NAME=${HOST_COMPOSE_SERVICE_NAME}-consul-8500
- SERVICE_8500_TAGS=${HOST_CONSUL_SERVICE_8500_TAGS}
- SERVICE_8600_IGNORE=true
- SERVICE_ADDRESS=${DOCKER_HOST_INET4}
network_mode: host
restart: always
volumes:
- consul:/consul/data:delegated
- ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock
volumes:
consul:
-5
View File
@@ -1,5 +0,0 @@
ENV_VARS += HOST_EXPORTER_CADVISOR_SERVICE_8080_TAGS HOST_EXPORTER_NODE_SERVICE_9100_TAGS
HOST_EXPORTER_CADVISOR_SERVICE_8080_NAME ?= cadvisor-exporter
HOST_EXPORTER_CADVISOR_SERVICE_8080_TAGS ?= $(call tagprefix,HOST_EXPORTER_CADVISOR,8080)
HOST_EXPORTER_NODE_SERVICE_9100_NAME ?= node-exporter
HOST_EXPORTER_NODE_SERVICE_9100_TAGS ?= $(call tagprefix,HOST_EXPORTER_NODE,9100)
-22
View File
@@ -1,22 +0,0 @@
version: '3.6'
services:
exporter-cadvisor:
container_name: ${HOST_COMPOSE_PROJECT_NAME}-exporter-cadvisor
hostname: ${HOSTNAME}
image: google/cadvisor:latest
labels:
- SERVICE_8080_CHECK_TCP=true
- SERVICE_8080_NAME=${HOST_COMPOSE_SERVICE_NAME}-exporter-cadvisor-8080
- SERVICE_8080_TAGS=${HOST_EXPORTER_CADVISOR_SERVICE_8080_TAGS}
- SERVICE_9200_IGNORE=true
networks:
- public
ports:
- 8080
restart: always
volumes:
- /:/rootfs:ro
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- /var/run:/var/run:rw
-25
View File
@@ -1,25 +0,0 @@
version: '3.6'
services:
exporter-node:
command:
- --collector.filesystem.ignored-mount-points
- "^/(sys|proc|dev|host|etc|rootfs/var/lib/docker/containers|rootfs/var/lib/docker/overlay2|rootfs/run/docker/netns|rootfs/var/lib/docker/aufs)($$|/)"
- '--path.procfs=/host/proc'
- '--path.sysfs=/host/sys'
container_name: ${HOST_COMPOSE_PROJECT_NAME}-exporter-node
hostname: ${HOSTNAME}
image: prom/node-exporter:latest
labels:
- SERVICE_9100_CHECK_TCP=true
- SERVICE_9100_NAME=${HOST_COMPOSE_SERVICE_NAME}-exporter-node-9100
- SERVICE_9100_TAGS=${HOST_EXPORTER_NODE_SERVICE_9100_TAGS}
networks:
- public
ports:
- 9100
restart: always
volumes:
- /:/rootfs:ro
- /proc:/host/proc:ro
- /sys:/host/sys:ro
-13
View File
@@ -1,13 +0,0 @@
ENV_VARS += HOST_FABIO_PROXY_ADDR HOST_FABIO_PROXY_CS HOST_FABIO_SERVICE_9998_TAGS HOST_FABIO_VERSION
HOST_FABIO_PROXY_ADDR ?= $(call subst,$(space),$(comma),$(HOST_FABIO_SERVICE_PROXY_ADDR))
HOST_FABIO_SERVICE_HTTP_ADDR ?= :80
HOST_FABIO_SERVICE_HTTPS_ADDR ?= :443;cs=certs
HOST_FABIO_SERVICE_PROXY_ADDR ?= $(call servicenvs,HOST_FABIO,PROXY,ADDR)
HOST_FABIO_SERVICE_PROXY_ENVS ?= http https tcp
HOST_FABIO_SERVICE_TCP_ADDR ?= $(foreach port,$(HOST_FABIO_SERVICE_TCP_PORT),:$(port);proto=tcp)
HOST_FABIO_SERVICE_TCP_PORT ?=
HOST_FABIO_SERVICE_9998_NAME ?= fabio
HOST_FABIO_SERVICE_9998_AUTH ?= default
HOST_FABIO_SERVICE_9998_TAGS ?= $(call tagprefix,HOST_FABIO,9998)
HOST_FABIO_UFW_UPDATE ?= 80/tcp 443/tcp
HOST_FABIO_VERSION ?= 1.6.3
-40
View File
@@ -1,40 +0,0 @@
version: '3.6'
services:
fabio:
build:
args:
- DOCKER_BUILD_DIR=docker/fabio
- DOCKER_MACHINE=${DOCKER_MACHINE}
- DOCKER_SYSTEM=${DOCKER_SYSTEM}
- FABIO_VERSION=${HOST_FABIO_VERSION:-${FABIO_VERSION:-1.6.0}}
context: ../..
dockerfile: docker/fabio/Dockerfile
command: -log.level "${HOST_FABIO_LOG_LEVEL:-INFO}" -proxy.addr "${HOST_FABIO_PROXY_ADDR:-:80,:443;cs=certs}" -proxy.auth "${HOST_FABIO_PROXY_AUTH:-name=default;type=basic;file=/host/htpasswd/default.htpasswd}" -proxy.cs "${HOST_FABIO_PROXY_CS:-cs=local;type=file;cert=/host/live/localhost/fullchain.pem;key=/host/live/localhost/privkey.pem,cs=certs;type=path;cert=/host/certs}" -proxy.matcher "${HOST_FABIO_PROXY_MATCHER:-glob}" -registry.backend "${HOST_FABIO_REGISTRY_BACKEND:-consul}" -registry.consul.addr "${HOST_FABIO_REGISTRY_CONSUL_ADDR:-consul:8500}" -registry.consul.token "${HOST_CONSUL_HTTP_TOKEN:-01234567-89ab-cdef-0123-456789abcdef}" -log.access.target stdout -log.access.format '$$remote_host - - [$$time_common] "$$request" $$response_status $$response_body_size "$$header.Referer" "$$header.User-Agent" "$$header.forwarded" $$upstream_addr $$response_time_ms $$request_url'
container_name: ${HOST_COMPOSE_PROJECT_NAME}-fabio
domainname: ${DOMAINNAME}
depends_on:
- consul
extra_hosts:
- consul:${DOCKER_INTERNAL_DOCKER_HOST}
- ${HOSTNAME}.${DOMAINNAME} ${HOSTNAME}:${DOCKER_HOST_INET4}
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/fabio:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_80_CHECK_TCP=true
- SERVICE_80_NAME=${HOST_COMPOSE_SERVICE_NAME}-fabio-80
- SERVICE_443_CHECK_TCP=true
- SERVICE_443_NAME=${HOST_COMPOSE_SERVICE_NAME}-fabio-443
- SERVICE_9998_CHECK_HTTP=/routes
- SERVICE_9998_NAME=${HOST_COMPOSE_SERVICE_NAME}-fabio-9998
- SERVICE_9998_TAGS=${HOST_FABIO_SERVICE_9998_TAGS}
- SERVICE_9999_IGNORE=true
network_mode: host
restart: always
volumes:
- host:/host:ro
volumes:
host:
external: true
name: ${HOST_DOCKER_VOLUME}
-1
View File
@@ -1 +0,0 @@
HOST_FTPS_UFW_DOCKER ?= 21/tcp 18700/tcp 18701/tcp 18702/tcp 18703/tcp 18704/tcp 18705/tcp 18706/tcp 18707/tcp 18708/tcp 18709/tcp 18710/tcp
-32
View File
@@ -1,32 +0,0 @@
version: '3.6'
services:
ftps:
container_name: ${HOST_COMPOSE_PROJECT_NAME}-ftps
environment:
- FTPS_EXTERNAL_IP=${DOCKER_HOST_INET4}
- FTPS_PASS=${HOST_FTPS_PASS}
- FTPS_USER=${HOST_FTPS_USER}
- FTPS_UID=${HOST_FTPS_UID}
image: bfren/ftps:latest
labels:
- SERVICE_21_CHECK_TCP=true
- SERVICE_21_NAME=${COMPOSE_SERVICE_NAME}-ftps-21
networks:
- private
- public
ports:
- 21:21
- 18700-18710:18700-18710
restart: always
volumes:
- backup:/files
- host:/host
- ssl:/ssl
volumes:
backup:
host:
external: true
name: ${HOST_DOCKER_VOLUME}
ssl:
-102
View File
@@ -1,102 +0,0 @@
ENV_VARS += DOCKER_HOST_IFACE DOCKER_HOST_INET4 DOCKER_INTERNAL_DOCKER_HOST
MAKECMDARGS += host-exec stack-host-exec host-exec:% host-exec@% host-run host-run:% host-run@%
SETUP_LETSENCRYPT ?=
host ?= host/consul host/fabio host/registrator
# target bootstrap-stack-host: Fire host-certbot host-ssl-certs
.PHONY: bootstrap-stack-host
bootstrap-stack-host: $(if $(SETUP_CERTBOT),host-certbot) host-ssl-certs
# target host: Fire stack-host-up
.PHONY: host
host: stack-host-up
# target host-%; Fire target stack-host-%
.PHONY: host-%
host-%: stack-host-%;
# target host-ssl-certs: Create invalid ${DOMAIN} certificate files with openssl
.PHONY: host-ssl-certs
host-ssl-certs:
$(RUN) docker run --rm \
-e DOMAIN='$(DOMAIN)' \
--mount source=$(HOST_DOCKER_VOLUME),target=/host \
alpine sh -c "mkdir -p /host/htpasswd && chmod 700 /host/htpasswd \
; mkdir -p /host/certs && chmod 0700 /host/certs \
; [ -f /host/htpasswd/default.htpasswd ] \
|| echo "${HOSTNAME}:{PLAIN}$(shell head -c 15 /dev/random |base64)" > /host/htpasswd/default.htpasswd \
; apk --no-cache add openssl \
; for domain in ${DOMAIN}; do \
[ -f /host/live/\$${domain}/privkey.pem ] \
&& openssl x509 -in /host/live/\$${domain}/fullchain.pem -noout -issuer 2>/dev/null |grep -iqv staging \
&& cp -L /host/live/\$${domain}/fullchain.pem /host/certs/\$${domain}-cert.pem \
&& cp -L /host/live/\$${domain}/privkey.pem /host/certs/\$${domain}-key.pem \
; if [ ! -f /host/certs/\$${domain}-key.pem ]; then \
openssl genrsa -out /host/certs/\$${domain}-key.pem 2048 \
&& openssl req -key /host/certs/\$${domain}-key.pem -out /host/certs/\$${domain}-cert.pem \
-addext extendedKeyUsage=serverAuth \
-addext subjectAltName=DNS:\$${domain},DNS:*.\$${domain} \
-subj \"/C=/ST=/L=/O=/CN=\$${domain}\" \
-x509 -days 365 \
; fi \
; done \
"
# target host-certbot: Create ${DOMAIN} certificate files with letsencrypt
.PHONY: host-certbot
host-certbot: host-docker-build-certbot
$(foreach domain,$(DOMAIN), \
$(RUN) docker run --rm \
-e DOMAIN=$(domain) \
--mount source=$(HOST_DOCKER_VOLUME),target=/etc/letsencrypt/ \
--mount source=$(HOST_DOCKER_VOLUME),target=/var/log/letsencrypt/ \
--network host \
$(HOST_DOCKER_REPOSITORY)/certbot:$(DOCKER_IMAGE_TAG) \
--dns-standalone-address=0.0.0.0 \
--dns-standalone-port=53 \
--non-interactive --agree-tos --email hostmaster@$(domain) certonly \
--preferred-challenges dns --authenticator dns-standalone \
-d $(domain) \
-d *.$(domain) \
&& \
) true
# target host-certbot-certificates: List letsencrypt certificates
.PHONY: host-certbot-certificates
host-certbot-certificates: host-docker-build-certbot
docker run --rm --mount source=$(HOST_DOCKER_VOLUME),target=/etc/letsencrypt/ $(HOST_DOCKER_REPOSITORY)/certbot:$(DOCKER_IMAGE_TAG) certificates
# target host-certbot-renew: Renew letsencrypt certificates
.PHONY: host-certbot-renew
host-certbot-renew: host-docker-build-certbot
docker run --rm --mount source=$(HOST_DOCKER_VOLUME),target=/etc/letsencrypt/ --network host $(HOST_DOCKER_REPOSITORY)/certbot:$(DOCKER_IMAGE_TAG) renew
# target host-certbot-staging: Create staging ${DOMAIN} certificate files with letsencrypt
.PHONY: host-certbot-staging
host-certbot-staging: host-docker-build-certbot
$(foreach domain,$(DOMAIN), \
$(RUN) docker run --rm \
-e DOMAIN=$(domain) \
--mount source=$(HOST_DOCKER_VOLUME),target=/etc/letsencrypt/ \
--mount source=$(HOST_DOCKER_VOLUME),target=/var/log/letsencrypt/ \
--network host \
$(HOST_DOCKER_REPOSITORY)/certbot:$(DOCKER_IMAGE_TAG) \
--dns-standalone-address=0.0.0.0 \
--dns-standalone-port=53 \
--non-interactive --agree-tos --email hostmaster@$(domain) certonly \
--preferred-challenges dns --authenticator dns-standalone \
--staging \
-d $(domain) \
-d *.$(domain) \
&& \
) true
# target host-docker-build-%: Build % docker
.PHONY: host-docker-build-%
host-docker-build-%:
$(call docker-build,docker/$*,$(HOST_DOCKER_REPOSITORY)/$*:$(DOCKER_IMAGE_TAG))
# target host-docker-rebuild-%: Rebuild % docker
.PHONY: host-docker-rebuild-%
host-docker-rebuild-%:
$(call make,host-docker-build-$* DOCKER_BUILD_CACHE=false)
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
ipfs:
volumes:
- home:/home:delegated
volumes:
home:
-10
View File
@@ -1,10 +0,0 @@
ENV_VARS += HOST_IPFS_API_HTTPHEADERS_ACA_ORIGIN HOST_IPFS_SERVICE_5001_TAGS HOST_IPFS_SERVICE_8080_TAGS
HOST_IPFS_API_HTTPHEADERS_ACA_ORIGIN ?= [$(call patsublist,%,"https://%",$(patsubst %/,%,$(HOST_IPFS_SERVICE_8080_URIS)))]
HOST_IPFS_SERVICE_HOST_URIS ?= */ipfs/ */ipns/
HOST_IPFS_SERVICE_NAME ?= ipfs
HOST_IPFS_SERVICE_5001_PATH ?= api/
HOST_IPFS_SERVICE_5001_TAGS ?= $(call tagprefix,HOST_IPFS,5001)
HOST_IPFS_SERVICE_8080_ENVS ?= host
HOST_IPFS_SERVICE_8080_TAGS ?= $(call urlprefix,,,$(HOST_IPFS_SERVICE_8080_URIS) $(call servicenvs,HOST_IPFS,8080,URIS))
HOST_IPFS_SERVICE_8080_URIS ?= $(call uri,ipfs *.ipns *.ipfs)
HOST_IPFS_UFW_UPDATE ?= 4001/tcp 4001/udp 8080
-88
View File
@@ -1,88 +0,0 @@
version: '3.6'
services:
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- GID=${HOST_GID}
- IPFS_VERSION=${IPFS_VERSION}
- UID=${HOST_UID}
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --agent-version-suffix=${HOST_COMPOSE_PROJECT_NAME} ${HOST_IPFS_DAEMON_ARGS:---migrate=true}
container_name: ${HOST_COMPOSE_PROJECT_NAME}-ipfs
cpus: 0.5
environment:
- IPFS_ADDRESSES_API=${HOST_IPFS_ADDRESSES_API:-}
- IPFS_ADDRESSES_API_DOMAIN=${HOST_IPFS_ADDRESSES_API_DOMAIN:-${DOCKER_NETWORK_PUBLIC}}
- IPFS_ADDRESSES_API_INET4=${HOST_IPFS_ADDRESSES_API_INET4:-}
- IPFS_ADDRESSES_API_PORT=${HOST_IPFS_ADDRESSES_API_PORT:-}
- IPFS_ADDRESSES_GATEWAY=${HOST_IPFS_ADDRESSES_GATEWAY:-}
- IPFS_ADDRESSES_GATEWAY_DOMAIN=${HOST_IPFS_ADDRESSES_GATEWAY_DOMAIN:-}
- IPFS_ADDRESSES_GATEWAY_INET4=${HOST_IPFS_ADDRESSES_GATEWAY_INET4:-0.0.0.0}
- IPFS_ADDRESSES_GATEWAY_PORT=${HOST_IPFS_ADDRESSES_GATEWAY_PORT:-}
- IPFS_ADDRESSES_NOANNOUNCE=${HOST_IPFS_ADDRESSES_NOANNOUNCE:-}
- IPFS_API_HTTPHEADERS=${HOST_IPFS_API_HTTPHEADERS:-}
- IPFS_API_HTTPHEADERS_ACA_CREDENTIALS=${HOST_IPFS_API_HTTPHEADERS_ACA_CREDENTIALS:-["true"]}
- IPFS_API_HTTPHEADERS_ACA_HEADERS=${HOST_IPFS_API_HTTPHEADERS_ACA_HEADERS:-["X-Requested-With", "Range", "User-Agent"]}
- IPFS_API_HTTPHEADERS_ACA_METHODS=${HOST_IPFS_API_HTTPHEADERS_ACA_METHODS:-["OPTIONS", "POST"]}
- IPFS_API_HTTPHEADERS_ACA_ORIGIN=${HOST_IPFS_API_HTTPHEADERS_ACA_ORIGIN:-}
- IPFS_BOOTSTRAP=${HOST_IPFS_BOOTSTRAP:-}
- IPFS_DATASTORE_GCPERIOD=${HOST_IPFS_DATASTORE_GCPERIOD:-}
- IPFS_DISK_USAGE_PERCENT=${HOST_IPFS_DISK_USAGE_PERCENT:-}
- IPFS_EXPERIMENTAL_ACCELERATEDDHTCLIENT=${HOST_IPFS_EXPERIMENTAL_ACCELERATEDDHTCLIENT:-}
- IPFS_EXPERIMENTAL_FILESTOREENABLED=${HOST_IPFS_EXPERIMENTAL_FILESTOREENABLED:-}
- IPFS_EXPERIMENTAL_GRAPHSYNCENABLED=${HOST_IPFS_EXPERIMENTAL_GRAPHSYNCENABLED:-}
- IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING=${HOST_IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING:-true}
- IPFS_EXPERIMENTAL_P2PHTTPPROXY=${HOST_IPFS_EXPERIMENTAL_P2PHTTPPROXY:-true}
- IPFS_EXPERIMENTAL_STRATEGICPROVIDING=${HOST_IPFS_EXPERIMENTAL_STRATEGICPROVIDING:-}
- IPFS_EXPERIMENTAL_URLSTOREENABLED=${HOST_IPFS_EXPERIMENTAL_URLSTOREENABLED:-}
- IPFS_IDENTITY_PEERID=${HOST_IPFS_IDENTITY_PEERID:-}
- IPFS_IDENTITY_PRIVKEY=${HOST_IPFS_IDENTITY_PRIVKEY:-}
- IPFS_IPNS_REPUBLISHPERIOD=${HOST_IPFS_IPNS_REPUBLISHPERIOD:-}
- IPFS_IPNS_RECORDLIFETIME=${HOST_IPFS_IPNS_RECORDLIFETIME:-}
- IPFS_IPNS_USEPUBSUB=${HOST_IPFS_IPNS_USEPUBSUB:-true}
- IPFS_LOGGING=${HOST_IPFS_LOGGING:-error}
- IPFS_NETWORK=${HOST_IPFS_NETWORK:-public}
- IPFS_PATH=${HOST_IPFS_PATH:-/data/ipfs}
- IPFS_PROFILE=${HOST_IPFS_PROFILE:-${IPFS_PROFILE}}
- IPFS_PUBSUB_ENABLE=${HOST_IPFS_PUBSUB_ENABLE:-true}
- IPFS_PUBSUB_ROUTER=${HOST_IPFS_PUBSUB_ROUTER:-gossipsub}
- IPFS_ROUTING_TYPE=${HOST_IPFS_ROUTING_TYPE:-dht}
- IPFS_REPROVIDER_INTERVAL=${HOST_IPFS_REPROVIDER_INTERVAL:-}
- IPFS_REPROVIDER_STRATEGY=${HOST_IPFS_REPROVIDER_STRATEGY:-roots}
- IPFS_SWARM_CONNMGR_HIGHWATER=${HOST_IPFS_SWARM_CONNMGR_HIGHWATER:-}
- IPFS_SWARM_CONNMGR_LOWWATER=${HOST_IPFS_SWARM_CONNMGR_LOWWATER:-}
- IPFS_SWARM_CONNMGR_TYPE=${HOST_IPFS_SWARM_CONNMGR_TYPE:-}
- IPFS_SWARM_DISABLENATPORTMAP=${HOST_IPFS_SWARM_DISABLENATPORTMAP:-}
- IPFS_SWARM_ENABLEHOLEPUNCHING=${HOST_IPFS_SWARM_ENABLEHOLEPUNCHING:-}
- IPFS_SWARM_KEY=${HOST_IPFS_SWARM_KEY:-}
- IPFS_SWARM_RELAYCLIENT_ENABLED=${HOST_IPFS_SWARM_RELAYCLIENT_ENABLED:-}
- IPFS_SWARM_RELAYSERVICE_ENABLED=${HOST_IPFS_SWARM_RELAYSERVICE_ENABLED:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_RELAY=${HOST_IPFS_SWARM_TRANSPORTS_NETWORK_RELAY:-}
healthcheck:
timeout: 55s
image: ${HOST_DOCKER_REPOSITORY}/ipfs:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${HOST_COMPOSE_SERVICE_NAME}-ipfs-4001
- SERVICE_5001_CHECK_HTTP=${HOST_IPFS_SERVICE_5001_CHECK_HTTP:-/api/v0/diag/sys}
- SERVICE_5001_CHECK_HTTP_METHOD=${HOST_IPFS_SERVICE_5001_CHECK_HTTP_METHOD:-POST}
- SERVICE_5001_NAME=${HOST_COMPOSE_SERVICE_NAME}-ipfs-5001
- SERVICE_5001_TAGS=${HOST_IPFS_SERVICE_5001_TAGS:-}
- SERVICE_8080_CHECK_HTTP=${HOST_IPFS_SERVICE_8080_CHECK_HTTP:-/ipfs/QmYwAPJzv5CZsnA625s3Xf2nemtYgPpHdWEz79ojWnPbdG/readme}
- SERVICE_8080_NAME=${HOST_COMPOSE_SERVICE_NAME}-ipfs-8080
- SERVICE_8080_TAGS=${HOST_IPFS_SERVICE_8080_TAGS:-}
- SERVICE_8081_IGNORE=true
network_mode: host
restart: always
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- ipfs:/data/ipfs:delegated
volumes:
ipfs:
-2
View File
@@ -1,2 +0,0 @@
HOST_389DS_VERSION := 2.4.4
ENV_VARS += HOST_389DS_VERSION
-16
View File
@@ -1,16 +0,0 @@
version: '3.6'
services:
389ds:
build:
args:
- BUILD_VERSION=${HOST_389DS_VERSION}
- DOCKER_BUILD_DIR=docker/389ds
context: ../..
dockerfile: docker/389ds/Dockerfile
container_name: ${HOST_COMPOSE_PROJECT_NAME}-389ds
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/389ds:${DOCKER_IMAGE_TAG}
network_mode: host
restart: always
-7
View File
@@ -1,7 +0,0 @@
# ENV_VARS += HOST_MAILSERVER_ENABLE_MANAGESIEVE HOST_MAILSERVER_SPOOF_PROTECTION HOST_MAILSERVER_SSL_TYPE HOST_MAILSERVER_ENABLE_UPDATE_CHECK
HOST_MAILSERVER_ENABLE_FAIL2BAN ?= 1
HOST_MAILSERVER_ENABLE_MANAGESIEVE ?= 1
HOST_MAILSERVER_ENABLE_UPDATE_CHECK ?= 0
HOST_MAILSERVER_SPOOF_PROTECTION ?= 1
HOST_MAILSERVER_SSL_TYPE ?= letsencrypt
HOST_MAILSERVER_UFW_DOCKER ?= 25/tcp 465/tcp 587/tcp 993/tcp
-157
View File
@@ -1,157 +0,0 @@
version: '2'
services:
mailserver:
image: mailserver/docker-mailserver:11.2
cap_add:
- NET_ADMIN
container_name: ${HOST_COMPOSE_PROJECT_NAME}-mailserver
cpus: 0.5
domainname: ${DOMAINNAME}
environment:
- OVERRIDE_HOSTNAME=${HOST_MAILSERVER_OVERRIDE_HOSTNAME:-}
- DMS_DEBUG=${HOST_MAILSERVER_DMS_DEBUG:-0}
- LOG_LEVEL=${HOST_MAILSERVER_LOG_LEVEL:-info}
- SUPERVISOR_LOGLEVEL=${HOST_MAILSERVER_SUPERVISOR_LOGLEVEL:-}
- ONE_DIR=${HOST_MAILSERVER_ONE_DIR:-1}
- ACCOUNT_PROVISIONER=${HOST_MAILSERVER_ACCOUNT_PROVISIONER:-}
- POSTMASTER_ADDRESS=${HOST_MAILSERVER_POSTMASTER_ADDRESS:-}
- ENABLE_UPDATE_CHECK=${HOST_MAILSERVER_ENABLE_UPDATE_CHECK:-0}
- UPDATE_CHECK_INTERVAL=${HOST_MAILSERVER_UPDATE_CHECK_INTERVAL:-1d}
- PERMIT_DOCKER=${HOST_MAILSERVER_PERMIT_DOCKER:-none}
- TZ=${HOST_MAILSERVER_TZ:-${TZ}}
- NETWORK_INTERFACE=${HOST_MAILSERVER_NETWORK_INTERFACE:-}
- TLS_LEVEL=${HOST_MAILSERVER_TLS_LEVEL:-}
- SPOOF_PROTECTION=${HOST_MAILSERVER_SPOOF_PROTECTION:-1}
- ENABLE_SRS=${HOST_MAILSERVER_ENABLE_SRS:-0}
- ENABLE_POP3=${HOST_MAILSERVER_ENABLE_POP3:-}
- ENABLE_CLAMAV=${HOST_MAILSERVER_ENABLE_CLAMAV:-0}
- ENABLE_AMAVIS=${HOST_MAILSERVER_ENABLE_AMAVIS:-1}
- AMAVIS_LOGLEVEL=${HOST_MAILSERVER_AMAVIS_LOGLEVEL:-0}
- ENABLE_DNSBL=${HOST_MAILSERVER_ENABLE_DNSBL:-0}
- ENABLE_FAIL2BAN=${HOST_MAILSERVER_ENABLE_FAIL2BAN:-1}
- FAIL2BAN_BLOCKTYPE=${HOST_MAILSERVER_FAIL2BAN_BLOCKTYPE:-drop}
- ENABLE_MANAGESIEVE=${HOST_MAILSERVER_ENABLE_MANAGESIEVE:-1}
- POSTSCREEN_ACTION=${HOST_MAILSERVER_POSTSCREEN_ACTION:-enforce}
- SMTP_ONLY=${HOST_MAILSERVER_SMTP_ONLY:-}
- SSL_TYPE=${HOST_MAILSERVER_SSL_TYPE:-letsencrypt}
- SSL_CERT_PATH=${HOST_MAILSERVER_SSL_CERT_PATH:-}
- SSL_KEY_PATH=${HOST_MAILSERVER_SSL_KEY_PATH:-}
- SSL_ALT_CERT_PATH=${HOST_MAILSERVER_SSL_ALT_CERT_PATH:-}
- SSL_ALT_KEY_PATH=${HOST_MAILSERVER_SSL_ALT_KEY_PATH:-}
- VIRUSMAILS_DELETE_DELAY=${HOST_MAILSERVER_VIRUSMAILS_DELETE_DELAY:-}
- ENABLE_POSTFIX_VIRTUAL_TRANSPORT=${HOST_MAILSERVER_ENABLE_POSTFIX_VIRTUAL_TRANSPORT:-}
- POSTFIX_DAGENT=${HOST_MAILSERVER_POSTFIX_DAGENT:-}
- POSTFIX_MAILBOX_SIZE_LIMIT=${HOST_MAILSERVER_POSTFIX_MAILBOX_SIZE_LIMIT:-}
- ENABLE_QUOTAS=${HOST_MAILSERVER_ENABLE_QUOTAS:-1}
- POSTFIX_MESSAGE_SIZE_LIMIT=${HOST_MAILSERVER_POSTFIX_MESSAGE_SIZE_LIMIT:-}
- CLAMAV_MESSAGE_SIZE_LIMIT=${HOST_MAILSERVER_CLAMAV_MESSAGE_SIZE_LIMIT:-}
- PFLOGSUMM_TRIGGER=${HOST_MAILSERVER_PFLOGSUMM_TRIGGER:-}
- PFLOGSUMM_RECIPIENT=${HOST_MAILSERVER_PFLOGSUMM_RECIPIENT:-}
- PFLOGSUMM_SENDER=${HOST_MAILSERVER_PFLOGSUMM_SENDER:-}
- LOGWATCH_INTERVAL=${HOST_MAILSERVER_LOGWATCH_INTERVAL:-}
- LOGWATCH_RECIPIENT=${HOST_MAILSERVER_LOGWATCH_RECIPIENT:-}
- LOGWATCH_SENDER=${HOST_MAILSERVER_LOGWATCH_SENDER:-}
- REPORT_RECIPIENT=${HOST_MAILSERVER_REPORT_RECIPIENT:-}
- REPORT_SENDER=${HOST_MAILSERVER_REPORT_SENDER:-}
- LOGROTATE_INTERVAL=${HOST_MAILSERVER_LOGROTATE_INTERVAL:-weekly}
- POSTFIX_INET_PROTOCOLS=${HOST_MAILSERVER_POSTFIX_INET_PROTOCOLS:-all}
- DOVECOT_INET_PROTOCOLS=${HOST_MAILSERVER_DOVECOT_INET_PROTOCOLS:-all}
- ENABLE_SPAMASSASSIN=${HOST_MAILSERVER_ENABLE_SPAMASSASSIN:-0}
- SPAMASSASSIN_SPAM_TO_INBOX=${HOST_MAILSERVER_SPAMASSASSIN_SPAM_TO_INBOX:-1}
- ENABLE_SPAMASSASSIN_KAM=${HOST_MAILSERVER_ENABLE_SPAMASSASSIN_KAM:-0}
- MOVE_SPAM_TO_JUNK=${HOST_MAILSERVER_MOVE_SPAM_TO_JUNK:-1}
- SA_TAG=${HOST_MAILSERVER_SA_TAG:-2.0}
- SA_TAG2=${HOST_MAILSERVER_SA_TAG2:-6.31}
- SA_KILL=${HOST_MAILSERVER_SA_KILL:-6.31}
- SA_SPAM_SUBJECT=${HOST_MAILSERVER_SA_SPAM_SUBJECT:-***SPAM*****}
- ENABLE_FETCHMAIL=${HOST_MAILSERVER_ENABLE_FETCHMAIL:-0}
- FETCHMAIL_POLL=${HOST_MAILSERVER_FETCHMAIL_POLL:-300}
- ENABLE_LDAP=${HOST_MAILSERVER_ENABLE_LDAP:-}
- LDAP_START_TLS=${HOST_MAILSERVER_LDAP_START_TLS:-}
- LDAP_SERVER_HOST=${HOST_MAILSERVER_LDAP_SERVER_HOST:-}
- LDAP_SEARCH_BASE=${HOST_MAILSERVER_LDAP_SEARCH_BASE:-}
- LDAP_BIND_DN=${HOST_MAILSERVER_LDAP_BIND_DN:-}
- LDAP_BIND_PW=${HOST_MAILSERVER_LDAP_BIND_PW:-}
- LDAP_QUERY_FILTER_USER=${HOST_MAILSERVER_LDAP_QUERY_FILTER_USER:-}
- LDAP_QUERY_FILTER_GROUP=${HOST_MAILSERVER_LDAP_QUERY_FILTER_GROUP:-}
- LDAP_QUERY_FILTER_ALIAS=${HOST_MAILSERVER_LDAP_QUERY_FILTER_ALIAS:-}
- LDAP_QUERY_FILTER_DOMAIN=${HOST_MAILSERVER_LDAP_QUERY_FILTER_DOMAIN:-}
- DOVECOT_TLS=${HOST_MAILSERVER_DOVECOT_TLS:-}
- DOVECOT_USER_FILTER=${HOST_MAILSERVER_DOVECOT_USER_FILTER:-}
- DOVECOT_PASS_FILTER=${HOST_MAILSERVER_DOVECOT_PASS_FILTER:-}
- DOVECOT_MAILBOX_FORMAT=${HOST_MAILSERVER_DOVECOT_MAILBOX_FORMAT:-maildir}
- DOVECOT_AUTH_BIND=${HOST_MAILSERVER_DOVECOT_AUTH_BIND:-}
- ENABLE_POSTGREY=${HOST_MAILSERVER_ENABLE_POSTGREY:-0}
- POSTGREY_DELAY=${HOST_MAILSERVER_POSTGREY_DELAY:-300}
- POSTGREY_MAX_AGE=${HOST_MAILSERVER_POSTGREY_MAX_AGE:-35}
- POSTGREY_TEXT=${HOST_MAILSERVER_POSTGREY_TEXT:-"Delayed by Postgrey"}
- POSTGREY_AUTO_WHITELIST_CLIENTS=${HOST_MAILSERVER_POSTGREY_AUTO_WHITELIST_CLIENTS:-5}
- ENABLE_SASLAUTHD=${HOST_MAILSERVER_ENABLE_SASLAUTHD:-0}
- SASLAUTHD_MECHANISMS=${HOST_MAILSERVER_SASLAUTHD_MECHANISMS:-}
- SASLAUTHD_MECH_OPTIONS=${HOST_MAILSERVER_SASLAUTHD_MECH_OPTIONS:-}
- SASLAUTHD_LDAP_SERVER=${HOST_MAILSERVER_SASLAUTHD_LDAP_SERVER:-}
- SASLAUTHD_LDAP_BIND_DN=${HOST_MAILSERVER_SASLAUTHD_LDAP_BIND_DN:-}
- SASLAUTHD_LDAP_PASSWORD=${HOST_MAILSERVER_SASLAUTHD_LDAP_PASSWORD:-}
- SASLAUTHD_LDAP_SEARCH_BASE=${HOST_MAILSERVER_SASLAUTHD_LDAP_SEARCH_BASE:-}
- SASLAUTHD_LDAP_FILTER=${HOST_MAILSERVER_SASLAUTHD_LDAP_FILTER:-}
- SASLAUTHD_LDAP_START_TLS=${HOST_MAILSERVER_SASLAUTHD_LDAP_START_TLS:-}
- SASLAUTHD_LDAP_TLS_CHECK_PEER=${HOST_MAILSERVER_SASLAUTHD_LDAP_TLS_CHECK_PEER:-}
- SASLAUTHD_LDAP_TLS_CACERT_FILE=${HOST_MAILSERVER_SASLAUTHD_LDAP_TLS_CACERT_FILE:-}
- SASLAUTHD_LDAP_TLS_CACERT_DIR=${HOST_MAILSERVER_SASLAUTHD_LDAP_TLS_CACERT_DIR:-}
- SASLAUTHD_LDAP_PASSWORD_ATTR=${HOST_MAILSERVER_SASLAUTHD_LDAP_PASSWORD_ATTR:-}
- SASL_PASSWD=${HOST_MAILSERVER_SASL_PASSWD:-}
- SASLAUTHD_LDAP_AUTH_METHOD=${HOST_MAILSERVER_SASLAUTHD_LDAP_AUTH_METHOD:-}
- SASLAUTHD_LDAP_MECH=${HOST_MAILSERVER_SASLAUTHD_LDAP_MECH:-}
- SRS_SENDER_CLASSES=${HOST_MAILSERVER_SRS_SENDER_CLASSES:-envelope_sender}
- SRS_EXCLUDE_DOMAINS=${HOST_MAILSERVER_SRS_EXCLUDE_DOMAINS:-}
- SRS_SECRET=${HOST_MAILSERVER_SRS_SECRET:-}
- DEFAULT_RELAY_HOST=${HOST_MAILSERVER_DEFAULT_RELAY_HOST:-}
- RELAY_HOST=${HOST_MAILSERVER_RELAY_HOST:-}
- RELAY_PORT=${HOST_MAILSERVER_RELAY_PORT:-25}
- RELAY_USER=${HOST_MAILSERVER_RELAY_USER:-}
- RELAY_PASSWORD=${HOST_MAILSERVER_RELAY_PASSWORD:-}
healthcheck:
test: "ss --listening --tcp | grep -P 'LISTEN.+:smtp' || exit 1"
timeout: 3s
retries: 0
hostname: ${HOSTNAME}
labels:
- SERVICE_25_CHECK_TCP=true
- SERVICE_25_NAME=${HOST_COMPOSE_SERVICE_NAME}-mailserver-25
- SERVICE_110_IGNORE=true
- SERVICE_143_CHECK_TCP=true
- SERVICE_143_NAME=${HOST_COMPOSE_SERVICE_NAME}-mailserver-143
- SERVICE_465_CHECK_TCP=true
- SERVICE_465_NAME=${HOST_COMPOSE_SERVICE_NAME}-mailserver-465
- SERVICE_587_CHECK_TCP=true
- SERVICE_587_NAME=${HOST_COMPOSE_SERVICE_NAME}-mailserver-587
- SERVICE_993_CHECK_TCP=true
- SERVICE_993_NAME=${HOST_COMPOSE_SERVICE_NAME}-mailserver-993
- SERVICE_995_IGNORE=true
- SERVICE_4190_CHECK_TCP=true
- SERVICE_4190_NAME=${HOST_COMPOSE_SERVICE_NAME}-mailserver-4190
networks:
- public
ports:
- "25:25"
- "143:143"
- "465:465"
- "587:587"
- "993:993"
volumes:
- /etc/localtime:/etc/localtime:ro
- mailserver-config:/tmp/docker-mailserver/
- mailserver-data:/var/mail
- mailserver-logs:/var/log/mail
- mailserver-state:/var/mail-state
- host:/etc/letsencrypt:ro
restart: always
stop_grace_period: 1m
volumes:
mailserver-config:
mailserver-data:
mailserver-logs:
mailserver-state:
host:
external: true
name: ${HOST_DOCKER_VOLUME}
-11
View File
@@ -1,11 +0,0 @@
version: '3.6'
services:
nginx:
environment:
- DEFAULT=default_dns
volumes:
- dns:/dns
volumes:
dns:
-14
View File
@@ -1,14 +0,0 @@
ENV_VARS += HOST_NGINX_LETSENCRYPT_HOST HOST_NGINX_SERVICE_80_TAGS HOST_NGINX_SERVICE_443_TAGS HOST_NGINX_VIRTUAL_HOST
HOST_NGINX_HOST_URIS ?= true
HOST_NGINX_LETSENCRYPT_HOST ?= $(subst $(space),$(comma),$(filter-out *.%,$(subst $(comma),$(space),$(HOST_NGINX_VIRTUAL_HOST))))
HOST_NGINX_SERVICE_HOST_URIS ?= */ */.well-known/acme-challenge/
HOST_NGINX_SERVICE_HOST ?= $(subst $(comma),$(space),$(HOST_NGINX_VIRTUAL_HOST))
HOST_NGINX_SERVICE_80_HOST ?= $(HOST_NGINX_SERVICE_HOST)
HOST_NGINX_SERVICE_80_TAGS ?= $(call urlprefix,,,$(HOST_NGINX_SERVICE_80_URIS) $(call servicenvs,HOST_NGINX,80,URIS))
HOST_NGINX_SERVICE_80_URIS ?= $(patsubst %,%:80/,$(HOST_NGINX_SERVICE_80_HOST))
HOST_NGINX_SERVICE_80_ENVS ?= $(if $(HOST_NGINX_HOST_URIS),host)
HOST_NGINX_SERVICE_443_PATH ?= /
HOST_NGINX_SERVICE_443_HOST ?= $(patsubst %,%:443,$(HOST_NGINX_SERVICE_HOST))
HOST_NGINX_SERVICE_443_PROTO ?= https tlsskipverify=true
HOST_NGINX_SERVICE_443_TAGS ?= $(call tagprefix,HOST_NGINX,443,host)
HOST_NGINX_VIRTUAL_HOST ?= $(subst $(space),$(comma),$(APP_HOST))
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
nginx:
volumes:
- www:/var/www
volumes:
www:
-53
View File
@@ -1,53 +0,0 @@
version: '3.6'
services:
nginx:
build:
args:
- DOCKER_BUILD_DIR=docker/nginx
context: ../..
dockerfile: docker/nginx/Dockerfile
domainname: ${DOMAINNAME}
environment:
- DEFAULT=${HOST_NGINX_DEFAULT:-default}
- DEFAULT_HOST=${HOST_NGINX_DEFAULT_HOST:-}
- DEFAULT_LOCATION=${HOST_NGINX_DEFAULT_LOCATION:-}
- DEFAULT_LOCATION_PHP=${HOST_NGINX_DEFAULT_LOCATION_PHP:-}
- DEFAULT_LOCATION_IPFS=${HOST_NGINX_DEFAULT_LOCATION_IPFS:-}
- LETSENCRYPT_HOST=${HOST_NGINX_LETSENCRYPT_HOST:-${HOST_NGINX_VIRTUAL_HOST:-}}
- LETSENCRYPT_EMAIL=${HOST_NGINX_LETSENCRYPT_EMAIL:-${HOST_ACME_DEFAULT_EMAIL:-${DEFAULT_EMAIL:-${MAIL:-nginx@localhost}}}}
- LETSENCRYPT_SINGLE_DOMAIN_CERTS=${HOST_NGINX_LETSENCRYPT_SINGLE_DOMAIN_CERTS:-true}
- LETSENCRYPT_TEST=${HOST_NGINX_LETSENCRYPT_TEST:-${LETSENCRYPT_TEST:-}}
- SSL_POLICY=${HOST_NGINX_SSL_POLICY:-Mozilla-Modern}
- VIRTUAL_HOST=${HOST_NGINX_VIRTUAL_HOST:-localhost}
- VIRTUAL_PATH=${HOST_NGINX_VIRTUAL_PATH:-/}
- VIRTUAL_PROTO=${HOST_NGINX_VIRTUAL_PROTO:-local}
hostname: ${HOSTNAME}
image: ${DOCKER_REPOSITORY:-nginx}/nginx:${DOCKER_IMAGE_TAG:-latest}
labels:
- SERVICE_80_CHECK_TCP=${HOST_NGINX_SERVICE_80_CHECK_TCP:-true}
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME:-docker}-nginx-80
- SERVICE_80_TAGS=${HOST_NGINX_SERVICE_80_TAGS:-urlprefix-localhost:80/*}
- SERVICE_443_CHECK_TCP=${HOST_NGINX_SERVICE_443_CHECK_TCP:-true}
- SERVICE_443_NAME=${COMPOSE_SERVICE_NAME:-docker}-nginx-443
- SERVICE_443_TAGS=${HOST_NGINX_SERVICE_443_TAGS:-urlprefix-localhost:443/* proto=https tlsskipverify=true}
networks:
- public
ports:
- 80
- 443
restart: unless-stopped
volumes:
- ${DOCKER_SOCKET_LOCATION}:/tmp/docker.sock:ro
- certs:/etc/nginx/certs
- html:/usr/share/nginx/html
- htpasswd:/etc/nginx/htpasswd
- log:/var/log/nginx
- vhost:/etc/nginx/vhost.d
volumes:
certs:
html:
htpasswd:
log:
vhost:
-15
View File
@@ -1,15 +0,0 @@
version: '3.6'
services:
pdns-recursor:
build:
args:
- DOCKER_BUILD_DIR=docker/pdns-server
context: ../..
dockerfile: docker/pdns-server/Dockerfile
command: /usr/local/sbin/pdns_recursor --allow-from='127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16'
container_name: ${HOST_COMPOSE_PROJECT_NAME}-pdns-recursor
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/pdns-recursor:${DOCKER_IMAGE_TAG}
network_mode: host
restart: always
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
php:
volumes:
- dns:/dns
volumes:
dns:
-9
View File
@@ -1,9 +0,0 @@
version: '3.6'
services:
php:
volumes:
- www:/var/www
volumes:
www:
-16
View File
@@ -1,16 +0,0 @@
version: '3.6'
services:
nginx:
environment:
- DEFAULT_LOCATION_PHP=true
php:
depends_on:
- nginx
environment:
- VIRTUAL_HOST=php
- VIRTUAL_PROTO=fastcgi
image: php:fpm-alpine
networks:
- public
restart: always
-3
View File
@@ -1,3 +0,0 @@
ENV_VARS += HOST_PORTAINER_SERVICE_9000_TAGS
HOST_PORTAINER_SERVICE_9000_NAME ?= portainer
HOST_PORTAINER_SERVICE_9000_TAGS ?= $(call tagprefix,HOST_PORTAINER,9000)
-23
View File
@@ -1,23 +0,0 @@
version: '3.6'
services:
portainer:
container_name: ${HOST_COMPOSE_PROJECT_NAME}-portainer
image: portainer/portainer:latest
labels:
- SERVICE_8000_IGNORE=true
- SERVICE_9000_CHECK_HTTP=/
- SERVICE_9000_NAME=${HOST_COMPOSE_SERVICE_NAME}-portainer-9000
- SERVICE_9000_TAGS=${HOST_PORTAINER_SERVICE_9000_TAGS}
networks:
- public
ports:
- 8000
- 9000
restart: always
volumes:
- ${DOCKER_SOCKET_LOCATION}:/var/run/docker.sock
- portainer:/data
volumes:
portainer:
-28
View File
@@ -1,28 +0,0 @@
version: '3.6'
services:
registrator:
build:
args:
- DOCKER_BUILD_DIR=docker/registrator
- GIT_AUTHOR_NAME=${GIT_AUTHOR_NAME}
- GIT_AUTHOR_EMAIL=${GIT_AUTHOR_EMAIL}
context: ../..
dockerfile: docker/registrator/Dockerfile
command: -internal -cleanup -deregister always -resync=30 -useIpFromNetwork "${DOCKER_NETWORK_PUBLIC}" -useIpFromLabel SERVICE_ADDRESS consul://consul:8500
container_name: ${HOST_COMPOSE_PROJECT_NAME}-registrator
depends_on:
- consul
domainname: ${DOMAINNAME}
environment:
- CONSUL_HTTP_TOKEN=${HOST_CONSUL_HTTP_TOKEN}
- GL_DISABLE_VERSION_CHECK=true
extra_hosts:
- consul:${DOCKER_INTERNAL_DOCKER_HOST}
- ${HOSTNAME}.${DOMAINNAME} ${HOSTNAME}:${DOCKER_HOST_INET4}
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/registrator:${DOCKER_IMAGE_TAG}
network_mode: host
restart: always
volumes:
- ${DOCKER_SOCKET_LOCATION}:/tmp/docker.sock
-3
View File
@@ -1,3 +0,0 @@
ENV_VARS += HOST_STATIC_SERVICE_80_TAGS
HOST_STATIC_SERVICE_80_NAME ?= static
HOST_STATIC_SERVICE_80_TAGS ?= $(call tagprefix,HOST_STATIC,80)
-20
View File
@@ -1,20 +0,0 @@
version: '3.6'
services:
static:
command: /bin/sh -c "grep autoindex /etc/nginx/conf.d/default.conf >/dev/null 2>&1 || sed -i 's|index index.html index.htm;|index index.html index.htm;\n autoindex on;|' /etc/nginx/conf.d/default.conf && nginx -g 'daemon off;'"
image: nginx:alpine
labels:
- SERVICE_80_CHECK_TCP=true
- SERVICE_80_NAME=${COMPOSE_SERVICE_NAME}-static-80
- SERVICE_80_TAGS=${HOST_STATIC_SERVICE_80_TAGS:-urlprefix-localhost/*}
networks:
- public
ports:
- 80
restart: always
volumes:
- static:/usr/share/nginx/html:ro
volumes:
static:
-56
View File
@@ -1,56 +0,0 @@
version: '3.8'
services:
vdi:
build:
args:
- DOCKER_BUILD_DIR=docker/x2go/xfce-debian
- SSH_PORT=${HOST_SSH_PORT:-${SSH_PORT}}
context: ../..
dockerfile: docker/x2go/xfce-debian/Dockerfile
cap_add:
- IPC_LOCK # ecryptfs
- NET_ADMIN # iptables
- NET_RAW # iptables
- SYS_ADMIN # ecryptfs
container_name: ${HOST_COMPOSE_PROJECT_NAME}-vdi
cpus: 0.5
environment:
- DEBUG=${VDI_DEBUG:-}
- ECRYPTERS=${HOST_VDI_ECRYPTERS:-${USER}}
- LANG=${HOST_VDI_LANG:-C.UTF-8}
- SSH_PORT=${HOST_SSH_PORT:-${SSH_PORT}}
- SSH_AUTHORIZED_KEYS=${SSH_AUTHORIZED_KEYS:-}
- SSH_PUBLIC_HOSTS=${HOST_SSH_PUBLIC_HOSTS:-${SSH_PUBLIC_HOSTS}}
- SUDOERS=${HOST_VDI_SUDOERS:-${USER}}
- TZ=${HOST_VDI_TZ:-}
- USERS=${HOST_VDI_USERS:-${USER}}
image: ${HOST_DOCKER_REPOSITORY}/vdi:${DOCKER_IMAGE_TAG}
networks:
- public
ports:
- ${HOST_VDI_PORT:-22}:${SSH_PORT:-22}
restart: unless-stopped
security_opt:
- apparmor=unconfined # ecryptfs
- seccomp=unconfined # ecryptfs
tty: true
volumes:
- home:/home:delegated
- shared:/shared:cached
- shm:/dev/shm:delegated
volumes:
home:
shared:
driver: local
driver_opts:
type: none
device: /mnt/shared
o: bind
shm:
driver: local
driver_opts:
type: tmpfs
device: tmpfs
o: mode=1777,size=2147483648 # 2GB
-10
View File
@@ -1,10 +0,0 @@
version: '3.6'
volumes:
backup:
driver: local
driver_opts:
device: /var/lib/backup
o: bind
type: none
-38
View File
@@ -1,38 +0,0 @@
version: '3.6'
services:
vsftpd-s3:
build:
args:
- DOCKER_BUILD_DIR=docker/vsftpd-s3
context: ../..
dockerfile: docker/vsftpd-s3/Dockerfile
cap_add:
- sys_admin
container_name: ${HOST_COMPOSE_PROJECT_NAME}-vsftpd-s3
devices:
- /dev/fuse
environment:
- AWS_ACCESS_KEY_ID=${HOST_VSFTPD_S3_AWS_ACCESS_KEY_ID:-${AWS_ACCESS_KEY_ID}}
- AWS_SECRET_ACCESS_KEY=${HOST_VSFTPD_S3_AWS_SECRET_ACCESS_KEY:-${AWS_SECRET_ACCESS_KEY}}
- DIR_REMOTE=${HOST_VSFTPD_S3_DIR_REMOTE}
- FTP_HOST=${HOST_VSFTPD_S3_FTP_HOST}
- FTP_PASS=${HOST_VSFTPD_S3_FTP_PASS}
- FTP_SYNC=${HOST_VSFTPD_S3_FTP_SYNC}
- FTP_USER=${HOST_VSFTPD_S3_FTP_USER}
- FTPD_USER=${HOST_VSFTPD_S3_FTPD_USER}
- FTPD_USERS=${HOST_VSFTPD_S3_FTPD_USERS}
- PASV_MAX_PORT=${HOST_VSFTPD_S3_PASV_MAX_PORT}
- PASV_MIN_PORT=${HOST_VSFTPD_S3_PASV_MIN_PORT}
hostname: ${HOSTNAME}
image: ${HOST_DOCKER_REPOSITORY}/vsftpd-s3:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_21_CHECK_TCP=true
- SERVICE_21_NAME=${HOST_COMPOSE_SERVICE_NAME}-vsftpd-s3-21
- SERVICE_22_CHECK_TCP=true
- SERVICE_22_NAME=${HOST_COMPOSE_SERVICE_NAME}-vsftpd-s3-22
- SERVICE_65000_IGNORE=true
security_opt:
- apparmor:unconfined
network_mode: host
restart: always
-18
View File
@@ -1,18 +0,0 @@
ENV_VARS += IPFS_API_HTTPHEADERS_ACA_ORIGIN IPFS_DAEMON_ARGS IPFS_DATASTORE_DISKUSAGE IPFS_PROFILE IPFS_SERVICE_CPUS IPFS_SERVICE_5001_TAGS IPFS_SERVICE_8080_TAGS IPFS_VERSION
IPFS_API_HTTPHEADERS_ACA_ORIGIN ?= [$(call patsublist,%,"https://%",$(patsubst,%/,%,$(IPFS_SERVICE_8080_URIS)))]
IPFS_DATASTORE_DISKUSAGE ?= 80
IPFS_PROFILE ?= $(if $(filter-out amd64 x86_64,$(MACHINE)),lowpower,server)
IPFS_SERVICE_NAME ?= ipfs
IPFS_SERVICE_CPUS ?= 0.5
IPFS_SERVICE_5001_PATH ?= api/
IPFS_SERVICE_5001_TAGS ?= $(call tagprefix,ipfs,5001)
IPFS_SERVICE_8080_CHECK_HTTP ?= /ipfs/QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn
IPFS_SERVICE_8080_TAGS ?= $(call urlprefix,,,$(IPFS_SERVICE_8080_URIS))
IPFS_SERVICE_8080_URIS ?= $(call uri,ipfs *.ipns *.ipfs)
IPFS_VERSION ?= 0.32.1
.PHONY: bootstrap-stack-ipfs
bootstrap-stack-ipfs: ~/.ipfs setup-sysctl
~/.ipfs:
mkdir -p ~/.ipfs
-161
View File
@@ -1,161 +0,0 @@
version: '3.6'
services:
ipfs:
build:
args:
- DOCKER_BUILD_DIR=docker/ipfs
- IPFS_VERSION=${IPFS_VERSION}
- UID=${UID}
context: ../..
dockerfile: docker/ipfs/Dockerfile
command: daemon --agent-version-suffix=${COMPOSE_PROJECT_NAME} ${IPFS_DAEMON_ARGS:---migrate=true}
cpus: 0.5
environment:
- DEBUG=${DEBUG:-}
- IPFS_ADDRESSES_ANNOUNCE=${IPFS_ADDRESSES_ANNOUNCE:-}
- IPFS_ADDRESSES_API=${IPFS_ADDRESSES_API:-}
- IPFS_ADDRESSES_API_DOMAIN=${IPFS_ADDRESSES_API_DOMAIN:-${DOCKER_NETWORK_PRIVATE}}
- IPFS_ADDRESSES_API_INET4=${IPFS_ADDRESSES_API_INET4:-}
- IPFS_ADDRESSES_API_PORT=${IPFS_ADDRESSES_API_PORT:-}
- IPFS_ADDRESSES_APPENDANNOUNCE=${IPFS_ADDRESSES_APPENDANNOUNCE:-}
- IPFS_ADDRESSES_GATEWAY=${IPFS_ADDRESSES_GATEWAY:-}
- IPFS_ADDRESSES_GATEWAY_DOMAIN=${IPFS_ADDRESSES_GATEWAY_DOMAIN:-}
- IPFS_ADDRESSES_GATEWAY_INET4=${IPFS_ADDRESSES_GATEWAY_INET4:-0.0.0.0}
- IPFS_ADDRESSES_GATEWAY_PORT=${IPFS_ADDRESSES_GATEWAY_PORT:-}
- IPFS_ADDRESSES_NOANNOUNCE=${IPFS_ADDRESSES_NOANNOUNCE:-}
- IPFS_ADDRESSES_SWARM=${IPFS_ADDRESSES_SWARM:-}
- IPFS_API_HTTPHEADERS=${IPFS_API_HTTPHEADERS:-}
- IPFS_API_HTTPHEADERS_ACA_CREDENTIALS=${IPFS_API_HTTPHEADERS_ACA_CREDENTIALS:-["true"]}
- IPFS_API_HTTPHEADERS_ACA_HEADERS=${IPFS_API_HTTPHEADERS_ACA_HEADERS:-["X-Requested-With", "Range", "User-Agent"]}
- IPFS_API_HTTPHEADERS_ACA_METHODS=${IPFS_API_HTTPHEADERS_ACA_METHODS:-["OPTIONS", "POST"]}
- IPFS_API_HTTPHEADERS_ACA_ORIGIN=${IPFS_API_HTTPHEADERS_ACA_ORIGIN:-}
- IPFS_AUTONAT=${IPFS_AUTONAT:-}
- IPFS_AUTONAT_SERVICEMODE=${IPFS_AUTONAT_SERVICEMODE:-}
- IPFS_AUTONAT_THROTTLE=${IPFS_AUTONAT_THROTTLE:-}
- IPFS_AUTONAT_THROTTLE_GLOBALLIMIT=${IPFS_AUTONAT_THROTTLE_GLOBALLIMIT:-}
- IPFS_AUTONAT_THROTTLE_PEERLIMIT=${IPFS_AUTONAT_THROTTLE_PEERLIMIT:-}
- IPFS_AUTONAT_THROTTLE_INTERVAL=${IPFS_AUTONAT_THROTTLE_INTERVAL:-}
- IPFS_AUTOTLS=${IPFS_AUTOTLS:-}
- IPFS_AUTOTLS_ENABLED=${IPFS_AUTOTLS_ENABLED:-false}
- IPFS_AUTOTLS_DOMAINSUFFIX=${IPFS_AUTOTLS_DOMAINSUFFIX:-}
- IPFS_AUTOTLS_REGISTRATIONENDPOINT=${IPFS_AUTOTLS_REGISTRATIONENDPOINT:-}
- IPFS_AUTOTLS_REGISTRATIONTOKEN=${IPFS_AUTOTLS_REGISTRATIONTOKEN:-}
- IPFS_AUTOTLS_CAENDPOINT=${IPFS_AUTOTLS_CAENDPOINT:-}
- IPFS_BOOTSTRAP=${IPFS_BOOTSTRAP:-}
- IPFS_DATASTORE_BLOOMFILTERSIZE=${IPFS_DATASTORE_BLOOMFILTERSIZE:-}
- IPFS_DATASTORE_DISKUSAGE=${IPFS_DATASTORE_DISKUSAGE:-50}
- IPFS_DATASTORE_GCPERIOD=${IPFS_DATASTORE_GCPERIOD:-1h}
- IPFS_DATASTORE_HASHONREAD=${IPFS_DATASTORE_HASHONREAD:-false}
- IPFS_DATASTORE_SPEC=${IPFS_DATASTORE_SPEC:-}
- IPFS_DATASTORE_STORAGEGCWATERMARK=${IPFS_DATASTORE_STORAGEGCWATERMARK:-}
- IPFS_DISCOVERY_MDNS_ENABLED=${IPFS_DISCOVERY_MDNS_ENABLED:-true}
- IPFS_DNS_RESOLVERS=${IPFS_DNS_RESOLVERS:-}
- IPFS_DNS_MAXCACHETTL=${IPFS_DNS_MAXCACHETTL:-}
- IPFS_DOCKER_NETWORK=${IPFS_DOCKER_NETWORK:-172.16.0.0}
- IPFS_EXPERIMENTAL_FILESTOREENABLED=${IPFS_EXPERIMENTAL_FILESTOREENABLED:-}
- IPFS_EXPERIMENTAL_GATEWAYOVERLIBP2P=${IPFS_EXPERIMENTAL_GATEWAYOVERLIBP2P:-true}
- IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING=${IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING:-true}
- IPFS_EXPERIMENTAL_OPTIMISTICPROVIDE=${IPFS_EXPERIMENTAL_OPTIMISTICPROVIDE:-}
- IPFS_EXPERIMENTAL_P2PHTTPPROXY=${IPFS_EXPERIMENTAL_P2PHTTPPROXY:-true}
- IPFS_EXPERIMENTAL_STRATEGICPROVIDING=${IPFS_EXPERIMENTAL_STRATEGICPROVIDING:-}
- IPFS_EXPERIMENTAL_URLSTORE=${IPFS_EXPERIMENTAL_URLSTORE:-}
- IPFS_EXPERIMENTAL_URLSTOREENABLED=${IPFS_EXPERIMENTAL_URLSTOREENABLED:-}
- IPFS_GATEWAY_DESERIALIZEDRESPONSES=${IPFS_GATEWAY_DESERIALIZEDRESPONSES:-true}
- IPFS_GATEWAY_DISABLEHTMLERRORS=${IPFS_GATEWAY_DISABLEHTMLERRORS:-false}
- IPFS_GATEWAY_EXPOSEROUTINGAPI=${IPFS_GATEWAY_EXPOSEROUTINGAPI:-false}
- IPFS_GATEWAY_HTTPHEADERS=${IPFS_GATEWAY_HTTPHEADERS:-}
- IPFS_GATEWAY_HTTPHEADERS_ACA_CREDENTIALS=${IPFS_GATEWAY_HTTPHEADERS_ACA_CREDENTIALS:-["true"]}
- IPFS_GATEWAY_HTTPHEADERS_ACA_HEADERS=${IPFS_GATEWAY_HTTPHEADERS_ACA_HEADERS:-["X-Requested-With", "Range", "User-Agent"]}
- IPFS_GATEWAY_HTTPHEADERS_ACA_METHODS=${IPFS_GATEWAY_HTTPHEADERS_ACA_METHODS:-["GET"]}
- IPFS_GATEWAY_HTTPHEADERS_ACA_ORIGIN=${IPFS_GATEWAY_HTTPHEADERS_ACA_ORIGIN:-["*"]}
- IPFS_GATEWAY_NOFETCH=${IPFS_GATEWAY_NOFETCH:-false}
- IPFS_GATEWAY_NODNSLINK=${IPFS_GATEWAY_NODNSLINK:-false}
- IPFS_GATEWAY_PUBLICGATEWAYS=${IPFS_GATEWAY_PUBLICGATEWAYS:-}
- IPFS_IDENTITY_PEERID=${IPFS_IDENTITY_PEERID:-}
- IPFS_IDENTITY_PRIVKEY=${IPFS_IDENTITY_PRIVKEY:-}
- IPFS_IPNS_MAXCACHETTL=${IPFS_IPNS_MAXCACHETTL:-}
- IPFS_IPNS_REPUBLISHPERIOD=${IPFS_IPNS_REPUBLISHPERIOD:-}
- IPFS_IPNS_RECORDLIFETIME=${IPFS_IPNS_RECORDLIFETIME:-}
- IPFS_IPNS_RESOLVECACHESIZE=${IPFS_IPNS_RESOLVECACHESIZE:-}
- IPFS_IPNS_USEPUBSUB=${IPFS_IPNS_USEPUBSUB:-true}
- IPFS_LOGGING=${IPFS_LOGGING:-error}
- IPFS_NETWORK=${IPFS_NETWORK:-private}
- IPFS_PEERING_PEERS=${IPFS_PEERING_PEERS:-}
- IPFS_PINNING_REMOTESERVICES=${IPFS_PINNING_REMOTESERVICES:-}
- IPFS_PROFILE=${IPFS_PROFILE:-}
- IPFS_REPO_MIGRATE=${IPFS_REPO_MIGRATE:-true}
- IPFS_REPROVIDER_INTERVAL=${IPFS_REPROVIDER_INTERVAL:-}
- IPFS_REPROVIDER_STRATEGY=${IPFS_REPROVIDER_STRATEGY:-}
- IPFS_ROUTING_ACCELERATEDDHTCLIENT=${IPFS_ROUTING_ACCELERATEDDHTCLIENT:-true}
- IPFS_ROUTING_LOOPBACKADDRESSESONLANDHT=${IPFS_ROUTING_LOOPBACKADDRESSESONLANDHT:-}
- IPFS_ROUTING_METHODS=${IPFS_ROUTING_METHODS:-}
- IPFS_ROUTING_ROUTERS=${IPFS_ROUTING_ROUTERS:-}
- IPFS_ROUTING_TYPE=${IPFS_ROUTING_TYPE:-"dht"}
- IPFS_SWARM_ADDRFILTERS=${IPFS_SWARM_ADDRFILTERS:-}
- IPFS_SWARM_CONNMGR_GRACEPERIOD=${IPFS_SWARM_CONNMGR_GRACEPERIOD:-}
- 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_DISABLEBANDWIDTHMETRICS=${IPFS_SWARM_DISABLEBANDWIDTHMETRICS:-}
- IPFS_SWARM_ENABLEHOLEPUNCHING=${IPFS_SWARM_ENABLEHOLEPUNCHING:-}
- IPFS_SWARM_KEY=${IPFS_SWARM_KEY:-}
- IPFS_SWARM_RELAYCLIENT_ENABLED=${IPFS_SWARM_RELAYCLIENT_ENABLED:-}
- IPFS_SWARM_RELAYCLIENT_STATICRELAYS=${IPFS_SWARM_RELAYCLIENT_STATICRELAYS:-}
- IPFS_SWARM_RELAYSERVICE_CONNECTIONDATALIMIT=${IPFS_SWARM_RELAYSERVICE_CONNECTIONDATALIMIT:-}
- IPFS_SWARM_RELAYSERVICE_CONNECTIONDURATIONLIMIT=${IPFS_SWARM_RELAYSERVICE_CONNECTIONDURATIONLIMIT:-}
- IPFS_SWARM_RELAYSERVICE_LIMIT=${IPFS_SWARM_RELAYSERVICE_LIMIT:-}
- IPFS_SWARM_RELAYSERVICE_MAXCIRCUITS=${IPFS_SWARM_RELAYSERVICE_MAXCIRCUITS:-}
- IPFS_SWARM_RELAYSERVICE_MAXRESERVATIONS=${IPFS_SWARM_RELAYSERVICE_MAXRESERVATIONS:-}
- IPFS_SWARM_RELAYSERVICE_RESERVATIONTTL=${IPFS_SWARM_RELAYSERVICE_RESERVATIONTTL:-}
- IPFS_SWARM_RELAYSERVICE_BUFFERSIZE=${IPFS_SWARM_RELAYSERVICE_BUFFERSIZE:-}
- IPFS_SWARM_RELAYSERVICE_MAXRESERVATIONSPERASN=${IPFS_SWARM_RELAYSERVICE_MAXRESERVATIONSPERASN:-}
- IPFS_SWARM_RELAYSERVICE_MAXRESERVATIONSPERIP=${IPFS_SWARM_RELAYSERVICE_MAXRESERVATIONSPERIP:-}
- IPFS_SWARM_RESOURCEMGR_ALLOWLIST=${IPFS_SWARM_RESOURCEMGR_ALLOWLIST:-}
- IPFS_SWARM_RESOURCEMGR_ENABLED=${IPFS_SWARM_RESOURCEMGR_ENABLED:-}
- IPFS_SWARM_RESOURCEMGR_MAXFILEDESCRIPTORS=${IPFS_SWARM_RESOURCEMGR_MAXFILEDESCRIPTORS:-}
- IPFS_SWARM_RESOURCEMGR_MAXMEMORY=${IPFS_SWARM_RESOURCEMGR_MAXMEMORY:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_QUIC=${IPFS_SWARM_TRANSPORTS_NETWORK_QUIC:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_RELAY=${IPFS_SWARM_TRANSPORTS_NETWORK_RELAY:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_TCP=${IPFS_SWARM_TRANSPORTS_NETWORK_TCP:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_WEBRTCDIRECT=${IPFS_SWARM_TRANSPORTS_NETWORK_WEBRTCDIRECT:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_WEBSOCKET=${IPFS_SWARM_TRANSPORTS_NETWORK_WEBSOCKET:-}
- IPFS_SWARM_TRANSPORTS_NETWORK_WEBTRANSPORT=${IPFS_SWARM_TRANSPORTS_NETWORK_WEBTRANSPORT:-}
- IPFS_SWARM_TRANSPORTS_SECURITY_NOISE=${IPFS_SWARM_TRANSPORTS_SECURITY_NOISE:-}
- IPFS_SWARM_TRANSPORTS_SECURITY_TLS=${IPFS_SWARM_TRANSPORTS_SECURITY_TLS:-}
- IPFS_SWARM_TRANSPORTS_MULTIPLEXERS_YAMUX=${IPFS_SWARM_TRANSPORTS_MULTIPLEXERS_YAMUX:-}
image: ${DOCKER_REPOSITORY}/ipfs:${DOCKER_IMAGE_TAG}
labels:
- SERVICE_4001_CHECK_TCP=true
- SERVICE_4001_NAME=${COMPOSE_SERVICE_NAME}-ipfs-4001
- SERVICE_5001_CHECK_HTTP=${IPFS_SERVICE_5001_CHECK_HTTP:-/api/v0/diag/sys}
- SERVICE_5001_CHECK_HTTP_METHOD=${IPFS_SERVICE_5001_CHECK_HTTP_METHOD:-POST}
- SERVICE_5001_NAME=${COMPOSE_SERVICE_NAME}-ipfs-5001
- SERVICE_5001_TAGS=${IPFS_SERVICE_5001_TAGS:-}
- SERVICE_8080_CHECK_HTTP=${IPFS_SERVICE_8080_CHECK_HTTP:-/ipfs/QmUNLLsPACCz1vLxQVkXqqLX5R1X345qqfHbsf67hvA3Nn}
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME}-ipfs-8080
- SERVICE_8080_TAGS=${IPFS_SERVICE_8080_TAGS:-}
- SERVICE_8081_IGNORE=true
networks:
- private
ports:
- 4001/tcp
- 4001/udp
- 5001/tcp
- 8080/tcp
restart: always
ulimits:
nofile:
soft: 65536
hard: 65536
volumes:
- ipfs:/data/ipfs:delegated
volumes:
ipfs:
driver: local
driver_opts:
type: none
device: ${HOME}/.ipfs
o: bind
-6
View File
@@ -1,6 +0,0 @@
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 docker-compose-exec-sh,logagent,rm -Rf /root/.npm /log-buffer/*)
-13
View File
@@ -1,13 +0,0 @@
version: '3.6'
services:
memcached:
image: memcached:alpine
labels:
- SERVICE_11211_CHECK_TCP=true
- SERVICE_11211_NAME=${COMPOSE_SERVICE_NAME}-memcached-11211
networks:
- private
ports:
- 11211
restart: always
-1
View File
@@ -1 +0,0 @@
monitoring ?= grafana prometheus/alertmanager prometheus/blackbox prometheus/es-exporter prometheus/prometheus

Some files were not shown because too many files have changed in this diff Show More