Files
myos/stack/ipfs/ipfs.yml
T
2024-12-16 00:26:34 +00:00

162 lines
9.2 KiB
YAML

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}
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