Reputation: 438
I try to create a cluser of Apache Ignite in Docker Swarm mode. For some reason the service does not seem to pick up my configuration file. Any ideas of what I do wrong?
my docker compose file is like:
version: "3.3"
services:
ignite:
image: apacheignite/ignite
environment:
- "CONFIG_URI=file:///data/ignite/ignite.xml"
configs:
- source: ignite-config
target: /data/ignite/ignite.xml
#ports:
# - 8080:8080
deploy:
replicas: 1
configs:
ignite-config:
file: ./ignite.xml
The ignite.xml looks like
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:util="http://www.springframework.org/schema/util"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util.xsd">
<bean abstract="true" id="ignite.cfg" class="org.apache.ignite.configuration.IgniteConfiguration">
<!-- Explicitly configure TCP discovery SPI to provide list of initial nodes. -->
<property name="discoverySpi">
<bean class="org.apache.ignite.spi.discovery.tcp.TcpDiscoverySpi">
<property name="ipFinder">
<bean class="org.apache.ignite.spi.discovery.tcp.ipfinder.vm.TcpDiscoveryVmIpFinder">
<property name="addresses">
<list>
<value>tasks.ignite</value>
</list>
</property>
</bean>
</property>
</bean>
</property>
</bean>
</beans>
The error I get from ignite (through docker service logs) is:
Failed to start grid: Failed to find configuration in: file:/data/ignite/ignite.xml
Upvotes: 0
Views: 742
Reputation: 3017
The main problem here is that you have abstract="true" in org.apache.ignite.configuration.IgniteConfiguration bean definition in ignite.xml config file
Upvotes: 1