101 lines
4.1 KiB
YAML
101 lines
4.1 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}
|
|
cpus: 0.5
|
|
environment:
|
|
- IPFS_ADDRESSES_API=${IPFS_ADDRESSES_API:-}
|
|
- IPFS_ADDRESSES_API_DOMAIN=${IPFS_ADDRESSES_API_DOMAIN:-}
|
|
- IPFS_ADDRESSES_API_INET4=${IPFS_ADDRESSES_API_INET4:-}
|
|
- IPFS_ADDRESSES_API_PORT=${IPFS_ADDRESSES_API_PORT:-}
|
|
- IPFS_ADDRESSES_GATEWAY=${IPFS_ADDRESSES_GATEWAY:-}
|
|
- 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:-}
|
|
- IPFS_API_HTTPHEADERS_ACA_METHODS=${IPFS_API_HTTPHEADERS_ACA_METHODS:-}
|
|
- IPFS_API_HTTPHEADERS_ACA_ORIGIN=${IPFS_API_HTTPHEADERS_ACA_ORIGIN:-}
|
|
- IPFS_BOOTSTRAP=${IPFS_BOOTSTRAP:-}
|
|
- IPFS_DATASTORE_GCPERIOD=${IPFS_DATASTORE_GCPERIOD:-}
|
|
- IPFS_DISK_USAGE_PERCENT=${IPFS_DISK_USAGE_PERCENT:-}
|
|
- IPFS_EXPERIMENTAL_ACCELERATEDDHTCLIENT=${IPFS_EXPERIMENTAL_ACCELERATEDDHTCLIENT:-}
|
|
- IPFS_EXPERIMENTAL_FILESTOREENABLED=${IPFS_EXPERIMENTAL_FILESTOREENABLED:-}
|
|
- IPFS_EXPERIMENTAL_GRAPHSYNCENABLED=${IPFS_EXPERIMENTAL_GRAPHSYNCENABLED:-}
|
|
- IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING=${IPFS_EXPERIMENTAL_LIBP2PSTREAMMOUNTING:-}
|
|
- IPFS_EXPERIMENTAL_P2PHTTPPROXY=${IPFS_EXPERIMENTAL_P2PHTTPPROXY:-}
|
|
- IPFS_EXPERIMENTAL_STRATEGICPROVIDING=${IPFS_EXPERIMENTAL_STRATEGICPROVIDING:-}
|
|
- IPFS_EXPERIMENTAL_URLSTOREENABLED=${IPFS_EXPERIMENTAL_URLSTOREENABLED:-}
|
|
- IPFS_IPNS_REPUBLISHPERIOD=${IPFS_IPNS_REPUBLISHPERIOD:-}
|
|
- IPFS_IPNS_RECORDLIFETIME=${IPFS_IPNS_RECORDLIFETIME:-}
|
|
- IPFS_IPNS_USEPUBSUB=${IPFS_IPNS_USEPUBSUB:-}
|
|
- IPFS_LOGGING=${IPFS_LOGGING:-}
|
|
- IPFS_NETWORK=${IPFS_NETWORK:-}
|
|
- IPFS_PROFILE=${IPFS_PROFILE:-}
|
|
- 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
|
|
- SERVICE_4001_NAME=${COMPOSE_SERVICE_NAME}-ipfs-4001
|
|
- SERVICE_5001_CHECK_HTTP=${IPFS_SERVICE_5001_CHECK_HTTP}
|
|
- 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}
|
|
- SERVICE_8080_NAME=${COMPOSE_SERVICE_NAME}-ipfs-8080
|
|
- SERVICE_8080_TAGS=${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:
|
|
- ipfs:/data/ipfs:delegated
|
|
|
|
volumes:
|
|
ipfs:
|
|
driver: local
|
|
driver_opts:
|
|
type: none
|
|
device: ${HOME}/.ipfs
|
|
o: bind
|
|
|
|
networks:
|
|
private:
|
|
external: true
|
|
name: ${DOCKER_NETWORK_PRIVATE}
|
|
public:
|
|
external: true
|
|
name: ${DOCKER_NETWORK_PUBLIC}
|