I am using Ubuntu 22.04.02 with kernel 5.15.0-71-generic and Docker Docker version 23.0.5, build bc4487a
I am trying to spin up a 1 node Aerospike Community Edition container, but am unable to do so with a custom aerospike.conf
I try the following command, but the container constantly restarts and never runs successfully:
sudo docker run -d --restart=always --privileged --device ‘/dev/nvme1n1:/dev/nvme1n1’ --device ‘/dev/nvme2n1:/dev/nvme2n1’ -v ‘/opt/aerospike/etc/:/opt/aerospike/etc/’ --name aerospike -p 192.168.20.141:3000:3000 -p 3001-3003:3001-3003 aerospike/aerospike-server --config-file=/opt/aerospike/etc/aerospike.conf
My aerospike.conf file looks like this:
Aerospike database configuration file for deployments using raw storage with systemd.
service { proto-fd-max 15000 }
logging { console { context any info } }
network { service { address any port 3000 }
heartbeat {
mode multicast
multicast-group 239.1.99.222
port 3002
# To use unicast-mesh heartbeats, remove the 3 lines above, and see
# aerospike_mesh.conf for alternative.
interval 150
timeout 10
}
fabric {
port 3001
}
info {
port 3003
}
}
namespace aero0 { replication-factor 2 memory-size 40G
# Warning - legacy data in defined raw partition devices will be erased.
# These partitions must not be mounted by the file system.
storage-engine device {
# Use one or more lines like those below with actual device paths.
device /dev/nvme1n1
device /dev/nvme2n1
# The 2 lines below optimize for SSD.
scheduler-mode noop
write-block-size 128K
# Use the line below to store data in memory in addition to devices.
data-in-memory false
}
}
If I remove the config file and bind mount from the docker command, then the container works, but uses the default aerospike.conf file which I don’t want. Please assist on how to properly pass the custom aerospike.conf file.