GithubHelp home page GithubHelp logo

aerospike-server.docker's Introduction

Aerospike Database Docker Images

What is Aerospike?

Aerospike is a distributed NoSQL database purposefully designed for high performance applications. Aerospike supports key-value and document data models, and has multiple data types including List, Map, HyperLogLog, GeoJSON, and Blob. Aerospike's patented hybrid memory architecture delivers predictable high performance at scale and high data density per node.

aerospike_square_logo

Getting Started

Aerospike Database Community Edition (CE) supports the same developer APIs as Aerospike Database Enterprise Edition (EE), except for durable deletes. They differ in ease of operation and enterprise features, such as compression.

Since server version 6.1, Aerospike EE starts in a single-node cluster evaluation mode, with all its enterprise features available.

Running an Aerospike Server node

Enterprise Edition

Running Enterprise Edition with default evaluation feature key (versions 6.1+).

docker run -d --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-enterprise

Running Enterprise Edition with a feature key file in a mapped directory:

docker run -d -v DIR:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-enterprise

Running Enterprise Edition with a feature key file in an environment variable:

FEATKEY=$(base64 ~/Desktop/evaluation-features.conf)
docker run -d -e "FEATURES=$FEATKEY" -e "FEATURE_KEY_FILE=env-b64:FEATURES" --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-enterprise

Above, DIR is a directory on your machine where you drop your feature key file. Make sure Docker Desktop has file sharing permission to bind mount it into Docker containers.

Enterprise Edition for US Federal

Running Enterprise Edition for US Federal with default evaluation feature key (versions 6.1+).

docker run -d --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-federal

Running Aerospike Enterprise Edition for US Federal with a feature key file in a mapped directory:

docker run -d -v DIR:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-federal

Above, DIR is a directory on your machine where you drop your feature key file. Make sure Docker Desktop has file sharing permission to bind mount it into Docker containers.

Running Aerospike Enterprise Edition for US Federal with a feature key file in an environment variable:

FEATKEY=$(base64 ~/Desktop/evaluation-features.conf)
docker run -d -e "FEATURES=$FEATKEY" -e "FEATURE_KEY_FILE=env-b64:FEATURES" --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-federal

Community Edition

By using Aerospike Community Edition you agree to the COMMUNITY_LICENSE.

Running Aerospike Community Edition:

docker run -d --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server

Connecting to your Aerospike Container

You can use the latest aerospike-tools image to connect to your Aerospike container.

Using aql

docker run -ti aerospike/aerospike-tools:latest aql -h  $(docker inspect -f '{{.NetworkSettings.IPAddress }}' aerospike)

Seed:         172.17.0.2
User:         None
Config File:  /etc/aerospike/astools.conf /root/.aerospike/astools.conf 
Aerospike Query Client
Version 7.0.4
C Client Version 6.0.0
Copyright 2012-2021 Aerospike. All rights reserved.
aql> show namespaces
+------------+
| namespaces |
+------------+
| "test"     |
+------------+
[172.17.0.2:3000] 1 row in set (0.002 secs)

OK

aql> 

Using asadm

docker run -ti aerospike/aerospike-tools:latest asadm -h  $(docker inspect -f '{{.NetworkSettings.IPAddress }}' aerospike)

Seed:        [('172.17.0.2', 3000, None)]
Config_file: /root/.aerospike/astools.conf, /etc/aerospike/astools.conf
Aerospike Interactive Shell, version 2.10.0

Found 1 nodes
Online:  172.17.0.2:3000

Admin> info
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Network Information (2022-11-01 00:48:05 UTC)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           Node|         Node ID|             IP|    Build|Migrations|~~~~~~~~~~~~~~~~~~Cluster~~~~~~~~~~~~~~~~~~|Client|  Uptime
               |                |               |         |          |Size|         Key|Integrity|      Principal| Conns|        
172.17.0.2:3000|*BB9020011AC4202|172.17.0.2:3000|E-6.1.0.3|   0.000  |   1|19E628721D9A|True     |BB9020011AC4202|     8|00:02:09
Number of rows: 1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Namespace Usage Information (2022-11-01 00:48:05 UTC)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Namespace|           Node|  Total|Expirations|Evictions|  Stop|~~~~~~~~~~Device~~~~~~~~~~|~~~~~~~~~~Memory~~~~~~~~~|~Primary~
         |               |Records|           |         |Writes|    Used|Used%|HWM%|Avail%|    Used|Used%|HWM%|Stop%|~~Index~~
         |               |       |           |         |      |        |     |    |      |        |     |    |     |     Type
test     |172.17.0.2:3000|0.000  |    0.000  |  0.000  |False |0.000 B |  0.0|   0|    99|0.000 B |  0.0|   0|   90|shmem    
test     |               |0.000  |    0.000  |  0.000  |      |0.000 B |  0.0|    |      |0.000 B |  0.0|    |     |         
Number of rows: 1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Namespace Object Information (2022-11-01 00:48:05 UTC)~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Namespace|           Node|Rack|  Repl|  Total|~~~~~~~~~~Objects~~~~~~~~~~|~~~~~~~~~Tombstones~~~~~~~~|~~~~Pending~~~~
         |               |  ID|Factor|Records| Master|  Prole|Non-Replica| Master|  Prole|Non-Replica|~~~~Migrates~~~
         |               |    |      |       |       |       |           |       |       |           |     Tx|     Rx
test     |172.17.0.2:3000|   0|     1|0.000  |0.000  |0.000  |    0.000  |0.000  |0.000  |    0.000  |0.000  |0.000  
test     |               |    |      |0.000  |0.000  |0.000  |    0.000  |0.000  |0.000  |    0.000  |0.000  |0.000  
Number of rows: 1

Admin>

Customizing the Default Developer Environment

The Aerospike Docker image comes with a default configuration file, which sets up a single node, single namespace developer environment. Alternatively, you can provide your own configuration file (see below).

You can inject parameters into the default configuration template using container-side environment variables with the -e flag.

For example, to set the default namespace name to demo:

docker run -d --name aerospike -e "NAMESPACE=demo" -p 3000-3002:3000-3002 -v /my/dir:/opt/aerospike/etc/ -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" aerospike/aerospike-server-enterprise

Injecting configuration parameters into the configuration template isn't compatible with providing a configuration file. You can use one or the other.

List of template variables

FEATURE_KEY_FILE

The feature_key_file of the service context which is only applicable and to Enterprise editions and must be set to the empty string when running the Community edition. Default: /etc/aerospike/features.conf.

LOGFILE

The file param of the logging context. Default: "", do not log to file. The container will also log to `stdout`` regardless of what is configured here.

SERVICE_ADDRESS

The bind address of the networking.service subcontext. Default: any

SERVICE_PORT

The port of the networking.service subcontext. Default: 3000

Preconfigured namespace

The single preconfigured namespace has the following variables:

NAMESPACE

The name of the namespace. Default: test

DATA_IN_MEMORY

The storage-engine data-in-memory setting. If false (default), the namespace only stores the index in memory, and all reads and writes are served from the filesystem. If true the namespace storage is in-memory with filesystem persistence, meaning that reads and writes happen from a full in-memory copy, and a synchronous write persists to disk.

DEFAULT_TTL

The namespace default-ttl. Default: 30d

MEM_GB

The namespace memory-size. Default: 1, the unit is always G (GB)

NSUP_PERIOD

The namespace nsup-period. Default: 120 , nsup-period in seconds

STORAGE_GB

The namespace persistence file size. Default: 4, the unit is always G (GB)

Advanced Configuration

You can override the default configuration file by providing your own aerospike.conf, as described in Configuring Aerospike Database.

You should first -v map a local directory, which Docker will bind mount. Next, drop your aerospike.conf file into this directory. Finally, use the --config-file option to tell Aerospike where in the container the configuration file is (the default path is /etc/aerospike/aerospike.conf). Remember that the feature key file is required, so use feature-key-file in your config file to point to a mounted path (such as /opt/aerospike/etc/feature.conf).

For example:

docker run -d -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server-enterprise --config-file /opt/aerospike/etc/aerospike.conf

Persistent data directory

With Docker, the files within the container are not persisted past the life of the container. To persist data, you will want to mount a directory from the host to the container's /opt/aerospike/data using the -v option:

For example:

docker run -d  -v /opt/aerospike/data:/opt/aerospike/data  -v /opt/aerospike/etc:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 -e "FEATURE_KEY_FILE=/opt/aerospike/etc/features.conf" aerospike/aerospike-server-enterprise

The example above uses the configuration template, where the single defined namespace is in-memory with file-based persistence. Just mounting the predefined /opt/aerospike/data directory enables the data to be persisted on the host.

Alternatively, your custom configuration file is used with the parameter file set to be a file in the mounted /opt/aerospike/data, such as in the following config snippet:

namespace test {
    # :
    storage-engine device {
        file /opt/aerospike/data/test.dat
        filesize 4G
        data-in-memory true
    }
}

In this example we also mount the data directory in a similar way, using a custom configuration file

docker run -d -v /opt/aerospike/data:/opt/aerospike/data -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 --config-file /opt/aerospike/etc/aerospike.conf aerospike/aerospike-server-enterprise

Block storage

Docker provides an ability to expose a host's block devices to a running container. The --device option can be used to map a host block device within a container.

Update the storage-engine device section of the namespace in the custom Aerospike configuration file.

namespace test {
    # :
    storage-engine device {
        device /dev/xvdc
        write-block-size 128k
    }
}

Now to map a host drive /dev/sdc to /dev/xvdc on a container

docker run -d --device '/dev/sdc:/dev/xvdc' -v /opt/aerospike/etc/:/opt/aerospike/etc/ --name aerospike -p 3000-3002:3000-3002 --config-file /opt/aerospike/etc/aerospike.conf aerospike/aerospike-server-enterprise

Persistent Lua cache

Upon restart, your Lua cache will become emptied. To persist the cache, you will want to mount a directory from the host to the container's /opt/aerospike/usr/udf/lua using the -v option:

docker run -d -v /opt/aerospike/lua:/opt/aerospike/usr/udf/lua -v /opt/aerospike/data:/opt/aerospike/data --name aerospike -p 3000-3002:3000-3002 --config-file /opt/aerospike/etc/aerospike.conf aerospike/aerospike-server-enterprise

A note about security

For convenience, this image does not have security turned on by default, but it is a core Aerospike Enterprise Edition feature. The knowledge base article How To secure Aerospike database servers covers the topic well.

And Now for a Security Reminder that bad things can happen to good people.

Also see the knowledge base article How To secure Aerospike database servers.

Networking

Developers using the Aerospike Enterprise Edition single-node evaluation, and most others using Docker Desktop on their machine for development, will not need to configure the node for clustering. If you're interested in using clustering and have a feature key file without a single node limit or you are using the Community Edition, read the following sections.

Configuring the node's access address

In order for the Aerospike node to properly broadcast its address to the cluster and applications, the access-address configuration parameter needs to be set in the configuration file. If it is not set, then the IP address within the container will be used, which is not accessible to other nodes.

    network {
        service {
            address any                  # Listening IP Address
            port 3000                    # Listening Port
            access-address 192.168.1.100 # IP Address used by cluster nodes and applications
        }

    ...
    }

Mesh clustering

See How do I get a 2 nodes Aerospike cluster running quickly in Docker without editing a single file?

Sending Performance Data to Aerospike

Aerospike Telemetry is a feature that allows us to collect certain anonymized use data โ€“ not the database data โ€“ on your Aerospike Community Edition server use. Weโ€™d like to know when clusters are created and destroyed, cluster size, cluster workload, how often queries are run, whether instances are deployed purely in-memory or with Flash. Aerospike Telemetry collects information from running Community Edition server instances every 10 minutes. The data helps us to understand how the product is being used, identify issues, and create a better experience for the end user. More Info

Image Versions

These images are based on debian:*-slim.

Reporting Issues

Aerospike Enterprise evaluation users, if you have any problems with or questions about this image, please post on the Aerospike discussion forum or open an issue in aerospike/aerospike-server-enterprise.docker.

Enterprise customers are welcome to participate in the community forum, but can also report issues through the enterprise support system.

Community Edition users may report problems or ask questions about this image on the Aerospike Forums or open an issue in aerospike/aerospike-server.docker.

License

If you are using the Aerospike Database Enterprise Edition evaluation feature key file, you are operating under the Aerospike Evaluation License Agreement.

If you are using a feature key file you received as part of your commercial enterprise license, you are operating under the Aerospike Master License Agreement.

If you are using Aerospike Database CE refer to the license information in the aerospike/aerospike-server repository.

aerospike-server.docker's People

Contributors

achakrab avatar cstivers78 avatar dwelch-spike avatar kportertx avatar mcoberly2 avatar psftw avatar pvinh-spike avatar rbotzer avatar spkesan avatar volmarl avatar yosifkit avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aerospike-server.docker's Issues

Alpine support

I am trying to build Aerospike-Server using Docker. Here the docker base image is ubuntu: bionic but am in need of an Alpine version of Docker file. Please let me know if there is any aerospike official repository or an alternative approach for this.

asd exits immediately

Hi, trying to run this on Amazon Linux, Docker version 1.12.6, from Jenkins, within Docker Pipeline plugin, using the script command sh 'docker run -tid --name aerospike -p 3000:3000 -p 3001:3001 -p 3002:3002 -p 3003:3003 aerospike/aerospike-server'

It appears the container runs and exits almost immediately. The next line of the script calls sh 'docker inspect aerospike', and I get the following output:

{
        "Id": "9fc8d14e89fe9908e20c1e297c65215e73dd4594e5873a1c1a43b4b7e048314a",
        "Created": "2017-03-31T16:09:25.152504286Z",
        "Path": "/entrypoint.sh",
        "Args": [
            "asd"
        ],
        "State": {
            "Status": "exited",
            "Running": false,
            "Paused": false,
            "Restarting": false,
            "OOMKilled": false,
            "Dead": false,
            "Pid": 0,
            "ExitCode": 0,
            "Error": "",
            "StartedAt": "2017-03-31T16:09:25.709286579Z",
            "FinishedAt": "2017-03-31T16:09:25.778224404Z"
        },
        "Image": "sha256:ef4796745b5b9e098550e9d1c11f0ae561806b4e31127eba30ab8167eb207f95",
        "ResolvConfPath": "/var/lib/docker/containers/9fc8d14e89fe9908e20c1e297c65215e73dd4594e5873a1c1a43b4b7e048314a/resolv.conf",
        "HostnamePath": "/var/lib/docker/containers/9fc8d14e89fe9908e20c1e297c65215e73dd4594e5873a1c1a43b4b7e048314a/hostname",
        "HostsPath": "/var/lib/docker/containers/9fc8d14e89fe9908e20c1e297c65215e73dd4594e5873a1c1a43b4b7e048314a/hosts",
        "LogPath": "/var/lib/docker/containers/9fc8d14e89fe9908e20c1e297c65215e73dd4594e5873a1c1a43b4b7e048314a/9fc8d14e89fe9908e20c1e297c65215e73dd4594e5873a1c1a43b4b7e048314a-json.log",
        "Name": "/aerospike",
        "RestartCount": 0,
        "Driver": "devicemapper",
        "MountLabel": "",
        "ProcessLabel": "",
        "AppArmorProfile": "",
        "ExecIDs": null,
        "HostConfig": {
            "Binds": null,
            "ContainerIDFile": "",
            "LogConfig": {
                "Type": "json-file",
                "Config": {}
            },
            "NetworkMode": "default",
            "PortBindings": {
                "3000/tcp": [
                    {
                        "HostIp": "",
                        "HostPort": "3000"
                    }
                ],
                "3001/tcp": [
                    {
                        "HostIp": "",
                        "HostPort": "3001"
                    }
                ],
                "3002/tcp": [
                    {
                        "HostIp": "",
                        "HostPort": "3002"
                    }
                ],
                "3003/tcp": [
                    {
                        "HostIp": "",
                        "HostPort": "3003"
                    }
                ]
            },
            "RestartPolicy": {
                "Name": "no",
                "MaximumRetryCount": 0
            },
            "AutoRemove": false,
            "VolumeDriver": "",
            "VolumesFrom": null,
            "CapAdd": null,
            "CapDrop": null,
            "Dns": [],
            "DnsOptions": [],
            "DnsSearch": [],
            "ExtraHosts": null,
            "GroupAdd": null,
            "IpcMode": "",
            "Cgroup": "",
            "Links": null,
            "OomScoreAdj": 0,
            "PidMode": "",
            "Privileged": false,
            "PublishAllPorts": false,
            "ReadonlyRootfs": false,
            "SecurityOpt": null,
            "UTSMode": "",
            "UsernsMode": "",
            "ShmSize": 67108864,
            "Runtime": "runc",
            "ConsoleSize": [
                0,
                0
            ],
            "Isolation": "",
            "CpuShares": 0,
            "Memory": 0,
            "CgroupParent": "",
            "BlkioWeight": 0,
            "BlkioWeightDevice": null,
            "BlkioDeviceReadBps": null,
            "BlkioDeviceWriteBps": null,
            "BlkioDeviceReadIOps": null,
            "BlkioDeviceWriteIOps": null,
            "CpuPeriod": 0,
            "CpuQuota": 0,
            "CpusetCpus": "",
            "CpusetMems": "",
            "Devices": [],
            "DiskQuota": 0,
            "KernelMemory": 0,
            "MemoryReservation": 0,
            "MemorySwap": 0,
            "MemorySwappiness": -1,
            "OomKillDisable": false,
            "PidsLimit": 0,
            "Ulimits": null,
            "CpuCount": 0,
            "CpuPercent": 0,
            "IOMaximumIOps": 0,
            "IOMaximumBandwidth": 0
        },
        "GraphDriver": {
            "Name": "devicemapper",
            "Data": {
                "DeviceId": "860",
                "DeviceName": "docker-202:1-524296-10f35343443b4e2fa01a3c23a7b3f128818672de16cbc15749bda0c09fe66fdb",
                "DeviceSize": "10737418240"
            }
        },
        "Mounts": [
            {
                "Name": "61afd37f25a3836e329935a6d8b4ee6e9d2d314fae8c7278e39f599bcd39321f",
                "Source": "/var/lib/docker/volumes/61afd37f25a3836e329935a6d8b4ee6e9d2d314fae8c7278e39f599bcd39321f/_data",
                "Destination": "/opt/aerospike/data",
                "Driver": "local",
                "Mode": "",
                "RW": true,
                "Propagation": ""
            }
        ],
        "Config": {
            "Hostname": "9fc8d14e89fe",
            "Domainname": "",
            "User": "",
            "AttachStdin": false,
            "AttachStdout": false,
            "AttachStderr": false,
            "ExposedPorts": {
                "3000/tcp": {},
                "3001/tcp": {},
                "3002/tcp": {},
                "3003/tcp": {}
            },
            "Tty": true,
            "OpenStdin": true,
            "StdinOnce": false,
            "Env": [
                "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
                "AEROSPIKE_VERSION=3.12.0",
                "AEROSPIKE_SHA256=61aa3e7c0ee3adfbf0f2182a7e6a5556a4feffc20ab5aa1f93e0a25b282f3f1d"
            ],
            "Cmd": [
                "asd"
            ],
            "Image": "aerospike/aerospike-server",
            "Volumes": {
                "/opt/aerospike/data": {}
            },
            "WorkingDir": "",
            "Entrypoint": [
                "/entrypoint.sh"
            ],
            "OnBuild": null,
            "Labels": {}
        },
        "NetworkSettings": {
            "Bridge": "",
            "SandboxID": "b0156ca457ab4f17b94d2e91698ceaaf8716b664de4e6aa42bafe767d67676df",
            "HairpinMode": false,
            "LinkLocalIPv6Address": "",
            "LinkLocalIPv6PrefixLen": 0,
            "Ports": null,
            "SandboxKey": "/var/run/docker/netns/b0156ca457ab",
            "SecondaryIPAddresses": null,
            "SecondaryIPv6Addresses": null,
            "EndpointID": "",
            "Gateway": "",
            "GlobalIPv6Address": "",
            "GlobalIPv6PrefixLen": 0,
            "IPAddress": "",
            "IPPrefixLen": 0,
            "IPv6Gateway": "",
            "MacAddress": "",
            "Networks": {
                "bridge": {
                    "IPAMConfig": null,
                    "Links": null,
                    "Aliases": null,
                    "NetworkID": "0c18b9dbe04bf3841f46d1bc6cfefe1cc2b2c394b14fa1c4f0b74d9ca6dff699",
                    "EndpointID": "",
                    "Gateway": "",
                    "IPAddress": "",
                    "IPPrefixLen": 0,
                    "IPv6Gateway": "",
                    "GlobalIPv6Address": "",
                    "GlobalIPv6PrefixLen": 0,
                    "MacAddress": ""
                }
            }
        }
    }

Feels like I'm doing something incorrectly, but it isn't obvious to me what the problem is, or how to troubleshoot it.

Failing to Build -- release artifacts modified?

Looks like the release artifact on https://www.aerospike.com for 3.11.0.2 was modified since this was updated (4 days ago) -- was that intentional? (ie, was it an innocent mistake, or a malicious one?)

In either case, here's the build log showing the failure: (minus a bunch of apt-get output)

Sending build context to Docker daemon 11.26 kB
Step 1/10 : FROM ubuntu:xenial
 ---> f49eec89601e
Step 2/10 : ENV AEROSPIKE_VERSION 3.11.0.2
 ---> Using cache
 ---> c3b6b507dd15
Step 3/10 : ENV AEROSPIKE_SHA256 a6dfff8d278f628ca681ec92cdefaef9f8a7c534e5c9feece5060ac7d3b65453
 ---> Using cache
 ---> 835f09b9b54b
Step 4/10 : RUN apt-get update -y   && apt-get install -y wget python python-argparse python-bcrypt openssl python-openssl logrotate net-tools iproute2 iputils-ping   && wget "https://www.aerospike.com/artifacts/aerospike-server-community/${AEROSPIKE_VERSION}/aerospike-server-community-${AEROSPIKE_VERSION}-ubuntu16.04.tgz" -O aerospike-server.tgz   && echo "$AEROSPIKE_SHA256 *aerospike-server.tgz" | sha256sum -c -   && mkdir aerospike   && tar xzf aerospike-server.tgz --strip-components=1 -C aerospike   && dpkg -i aerospike/aerospike-server-*.deb   && dpkg -i aerospike/aerospike-tools-*.deb   && mkdir -p /var/log/aerospike/   && mkdir -p /var/run/aerospike/   && rm -rf aerospike-server.tgz aerospike /var/lib/apt/lists/*   && dpkg -r wget ca-certificates   && dpkg --purge wget ca-certificates   && apt-get purge -y
 ---> Running in 2b3e4434c9f1
Get:1 http://archive.ubuntu.com/ubuntu xenial InRelease [247 kB]
...
Fetched 24.7 MB in 3s (7547 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
  ca-certificates cron file libatm1 libexpat1 libffi6 libgmp10
  libgnutls-openssl27 libgnutls30 libhogweed4 libidn11 libmagic1 libmnl0
  libnettle6 libp11-kit0 libpopt0 libpython-stdlib libpython2.7-minimal
  libsqlite3-0 libssl1.0.0 libtasn1-6 libxtables11 mime-support
  python-cffi-backend python-cryptography python-enum34 python-idna
  python-ipaddress python-minimal python-pkg-resources python-pyasn1
  python-six python2.7 python2.7-minimal
Suggested packages:
  anacron checksecurity exim4 | postfix | mail-transport-agent iproute2-doc
  gnutls-bin mailx python-doc python-tk python-cryptography-doc
  python-cryptography-vectors python-enum34-doc python-openssl-doc
  python-openssl-dbg python-setuptools doc-base python2.7-doc binutils
  binfmt-support
The following NEW packages will be installed:
  ca-certificates cron file iproute2 iputils-ping libatm1 libexpat1 libffi6
  libgmp10 libgnutls-openssl27 libgnutls30 libhogweed4 libidn11 libmagic1
  libmnl0 libnettle6 libp11-kit0 libpopt0 libpython-stdlib
  libpython2.7-minimal libpython2.7-stdlib libsqlite3-0 libssl1.0.0 libtasn1-6
  libxtables11 logrotate mime-support net-tools openssl python python-bcrypt
  python-cffi-backend python-cryptography python-enum34 python-idna
  python-ipaddress python-minimal python-openssl python-pkg-resources
  python-pyasn1 python-six python2.7 python2.7-minimal wget
0 upgraded, 44 newly installed, 0 to remove and 4 not upgraded.
Need to get 9521 kB of archives.
After this operation, 38.6 MB of additional disk space will be used.
Get:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 cron amd64 3.0pl1-128ubuntu2 [68.4 kB]
...
Running hooks in /etc/ca-certificates/update.d...
done.
--2017-01-21 16:04:38--  https://www.aerospike.com/artifacts/aerospike-server-community/3.11.0.2/aerospike-server-community-3.11.0.2-ubuntu16.04.tgz
Resolving www.aerospike.com (www.aerospike.com)... 52.9.212.130, 52.8.162.132
Connecting to www.aerospike.com (www.aerospike.com)|52.9.212.130|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 6876045 (6.6M) [application/x-gzip]
Saving to: 'aerospike-server.tgz'

     0K .......... .......... .......... .......... ..........  0%  473K 14s
    50K .......... .......... .......... .......... ..........  1%  877K 11s
   100K .......... .......... .......... .......... ..........  2% 1.23M 9s
   150K .......... .......... .......... .......... ..........  2%  948K 8s
   200K .......... .......... .......... .......... ..........  3% 1.09M 8s
   250K .......... .......... .......... .......... ..........  4% 1.46M 7s
   300K .......... .......... .......... .......... ..........  5% 1.49M 7s
   350K .......... .......... .......... .......... ..........  5% 1.57M 6s
   400K .......... .......... .......... .......... ..........  6% 1.42M 6s
   450K .......... .......... .......... .......... ..........  7% 1.64M 6s
   500K .......... .......... .......... .......... ..........  8% 1.67M 6s
   550K .......... .......... .......... .......... ..........  8% 1.68M 5s
   600K .......... .......... .......... .......... ..........  9% 2.31M 5s
   650K .......... .......... .......... .......... .......... 10% 2.83M 5s
   700K .......... .......... .......... .......... .......... 11% 1.76M 5s
   750K .......... .......... .......... .......... .......... 11% 2.44M 4s
   800K .......... .......... .......... .......... .......... 12% 2.71M 4s
   850K .......... .......... .......... .......... .......... 13% 1.74M 4s
   900K .......... .......... .......... .......... .......... 14% 2.75M 4s
   950K .......... .......... .......... .......... .......... 14% 3.07M 4s
  1000K .......... .......... .......... .......... .......... 15% 2.66M 4s
  1050K .......... .......... .......... .......... .......... 16% 2.45M 4s
  1100K .......... .......... .......... .......... .......... 17% 3.67M 4s
  1150K .......... .......... .......... .......... .......... 17% 2.58M 3s
  1200K .......... .......... .......... .......... .......... 18% 2.61M 3s
  1250K .......... .......... .......... .......... .......... 19% 3.14M 3s
  1300K .......... .......... .......... .......... .......... 20% 3.71M 3s
  1350K .......... .......... .......... .......... .......... 20% 2.87M 3s
  1400K .......... .......... .......... .......... .......... 21% 5.14M 3s
  1450K .......... .......... .......... .......... .......... 22% 2.46M 3s
  1500K .......... .......... .......... .......... .......... 23% 6.57M 3s
  1550K .......... .......... .......... .......... .......... 23% 3.97M 3s
  1600K .......... .......... .......... .......... .......... 24% 2.54M 3s
  1650K .......... .......... .......... .......... .......... 25% 6.74M 3s
  1700K .......... .......... .......... .......... .......... 26% 2.48M 3s
  1750K .......... .......... .......... .......... .......... 26% 6.97M 3s
  1800K .......... .......... .......... .......... .......... 27% 4.75M 2s
  1850K .......... .......... .......... .......... .......... 28% 3.02M 2s
  1900K .......... .......... .......... .......... .......... 29% 7.46M 2s
  1950K .......... .......... .......... .......... .......... 29% 4.93M 2s
  2000K .......... .......... .......... .......... .......... 30% 2.97M 2s
  2050K .......... .......... .......... .......... .......... 31% 6.14M 2s
  2100K .......... .......... .......... .......... .......... 32% 5.77M 2s
  2150K .......... .......... .......... .......... .......... 32% 3.38M 2s
  2200K .......... .......... .......... .......... .......... 33% 6.19M 2s
  2250K .......... .......... .......... .......... .......... 34% 8.07M 2s
  2300K .......... .......... .......... .......... .......... 34% 3.21M 2s
  2350K .......... .......... .......... .......... .......... 35% 7.39M 2s
  2400K .......... .......... .......... .......... .......... 36% 5.27M 2s
  2450K .......... .......... .......... .......... .......... 37% 4.18M 2s
  2500K .......... .......... .......... .......... .......... 37% 4.75M 2s
  2550K .......... .......... .......... .......... .......... 38% 8.43M 2s
  2600K .......... .......... .......... .......... .......... 39% 7.72M 2s
  2650K .......... .......... .......... .......... .......... 40% 4.16M 2s
  2700K .......... .......... .......... .......... .......... 40% 5.53M 2s
  2750K .......... .......... .......... .......... .......... 41% 8.91M 2s
  2800K .......... .......... .......... .......... .......... 42% 6.01M 2s
  2850K .......... .......... .......... .......... .......... 43% 3.84M 1s
  2900K .......... .......... .......... .......... .......... 43% 6.36M 1s
  2950K .......... .......... .......... .......... .......... 44% 9.57M 1s
  3000K .......... .......... .......... .......... .......... 45% 8.10M 1s
  3050K .......... .......... .......... .......... .......... 46% 5.12M 1s
  3100K .......... .......... .......... .......... .......... 46% 5.46M 1s
  3150K .......... .......... .......... .......... .......... 47% 8.31M 1s
  3200K .......... .......... .......... .......... .......... 48% 6.86M 1s
  3250K .......... .......... .......... .......... .......... 49% 6.45M 1s
  3300K .......... .......... .......... .......... .......... 49% 4.91M 1s
  3350K .......... .......... .......... .......... .......... 50% 5.92M 1s
  3400K .......... .......... .......... .......... .......... 51% 18.4M 1s
  3450K .......... .......... .......... .......... .......... 52% 8.87M 1s
  3500K .......... .......... .......... .......... .......... 52% 7.38M 1s
  3550K .......... .......... .......... .......... .......... 53% 5.21M 1s
  3600K .......... .......... .......... .......... .......... 54% 5.11M 1s
  3650K .......... .......... .......... .......... .......... 55% 10.4M 1s
  3700K .......... .......... .......... .......... .......... 55% 11.9M 1s
  3750K .......... .......... .......... .......... .......... 56% 7.77M 1s
  3800K .......... .......... .......... .......... .......... 57% 6.10M 1s
  3850K .......... .......... .......... .......... .......... 58% 7.09M 1s
  3900K .......... .......... .......... .......... .......... 58% 8.08M 1s
  3950K .......... .......... .......... .......... .......... 59% 10.5M 1s
  4000K .......... .......... .......... .......... .......... 60% 8.53M 1s
  4050K .......... .......... .......... .......... .......... 61% 8.04M 1s
  4100K .......... .......... .......... .......... .......... 61% 6.36M 1s
  4150K .......... .......... .......... .......... .......... 62% 6.88M 1s
  4200K .......... .......... .......... .......... .......... 63% 10.1M 1s
  4250K .......... .......... .......... .......... .......... 64% 11.6M 1s
  4300K .......... .......... .......... .......... .......... 64% 11.8M 1s
  4350K .......... .......... .......... .......... .......... 65% 9.93M 1s
  4400K .......... .......... .......... .......... .......... 66% 5.43M 1s
  4450K .......... .......... .......... .......... .......... 67% 7.06M 1s
  4500K .......... .......... .......... .......... .......... 67% 11.7M 1s
  4550K .......... .......... .......... .......... .......... 68% 10.6M 1s
  4600K .......... .......... .......... .......... .......... 69% 11.7M 1s
  4650K .......... .......... .......... .......... .......... 69% 11.1M 1s
  4700K .......... .......... .......... .......... .......... 70% 8.58M 1s
  4750K .......... .......... .......... .......... .......... 71% 6.91M 1s
  4800K .......... .......... .......... .......... .......... 72% 7.62M 1s
  4850K .......... .......... .......... .......... .......... 72% 11.5M 1s
  4900K .......... .......... .......... .......... .......... 73% 11.3M 0s
  4950K .......... .......... .......... .......... .......... 74% 11.8M 0s
  5000K .......... .......... .......... .......... .......... 75% 10.5M 0s
  5050K .......... .......... .......... .......... .......... 75% 10.5M 0s
  5100K .......... .......... .......... .......... .......... 76% 7.87M 0s
  5150K .......... .......... .......... .......... .......... 77% 10.4M 0s
  5200K .......... .......... .......... .......... .......... 78% 8.48M 0s
  5250K .......... .......... .......... .......... .......... 78% 11.6M 0s
  5300K .......... .......... .......... .......... .......... 79% 11.0M 0s
  5350K .......... .......... .......... .......... .......... 80% 8.85M 0s
  5400K .......... .......... .......... .......... .......... 81% 16.5M 0s
  5450K .......... .......... .......... .......... .......... 81% 10.3M 0s
  5500K .......... .......... .......... .......... .......... 82% 10.1M 0s
  5550K .......... .......... .......... .......... .......... 83% 10.0M 0s
  5600K .......... .......... .......... .......... .......... 84% 9.71M 0s
  5650K .......... .......... .......... .......... .......... 84% 11.8M 0s
  5700K .......... .......... .......... .......... .......... 85% 11.4M 0s
  5750K .......... .......... .......... .......... .......... 86% 7.95M 0s
  5800K .......... .......... .......... .......... .......... 87% 11.5M 0s
  5850K .......... .......... .......... .......... .......... 87% 11.1M 0s
  5900K .......... .......... .......... .......... .......... 88% 11.7M 0s
  5950K .......... .......... .......... .......... .......... 89% 11.4M 0s
  6000K .......... .......... .......... .......... .......... 90% 8.75M 0s
  6050K .......... .......... .......... .......... .......... 90% 11.3M 0s
  6100K .......... .......... .......... .......... .......... 91% 11.7M 0s
  6150K .......... .......... .......... .......... .......... 92% 12.0M 0s
  6200K .......... .......... .......... .......... .......... 93% 11.3M 0s
  6250K .......... .......... .......... .......... .......... 93% 11.5M 0s
  6300K .......... .......... .......... .......... .......... 94% 11.4M 0s
  6350K .......... .......... .......... .......... .......... 95% 11.6M 0s
  6400K .......... .......... .......... .......... .......... 96% 8.76M 0s
  6450K .......... .......... .......... .......... .......... 96% 11.5M 0s
  6500K .......... .......... .......... .......... .......... 97% 11.5M 0s
  6550K .......... .......... .......... .......... .......... 98% 11.3M 0s
  6600K .......... .......... .......... .......... .......... 99% 11.3M 0s
  6650K .......... .......... .......... .......... .......... 99% 11.8M 0s
  6700K .......... ....                                       100% 15.0M=1.6s

2017-01-21 16:04:40 (4.21 MB/s) - 'aerospike-server.tgz' saved [6876045/6876045]

aerospike-server.tgz: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match
Removing intermediate container 2b3e4434c9f1
The command '/bin/sh -c apt-get update -y   && apt-get install -y wget python python-argparse python-bcrypt openssl python-openssl logrotate net-tools iproute2 iputils-ping   && wget "https://www.aerospike.com/artifacts/aerospike-server-community/${AEROSPIKE_VERSION}/aerospike-server-community-${AEROSPIKE_VERSION}-ubuntu16.04.tgz" -O aerospike-server.tgz   && echo "$AEROSPIKE_SHA256 *aerospike-server.tgz" | sha256sum -c -   && mkdir aerospike   && tar xzf aerospike-server.tgz --strip-components=1 -C aerospike   && dpkg -i aerospike/aerospike-server-*.deb   && dpkg -i aerospike/aerospike-tools-*.deb   && mkdir -p /var/log/aerospike/   && mkdir -p /var/run/aerospike/   && rm -rf aerospike-server.tgz aerospike /var/lib/apt/lists/*   && dpkg -r wget ca-certificates   && dpkg --purge wget ca-certificates   && apt-get purge -y' returned a non-zero code: 1

Docker healthcheck

It would be really helpful to have a high-level HEALTHCHECK command built in to the Aerospike Server Docker image.

Recognizing that there could be a lot of deployment-specific details that constitute "what is healthy?" (this 2015 forum post touches on it), I'd propose that use of the "default" HEALTHCHECK command be enabled or disabled by way of an environment variable (e.g. --env "AS_DEFAULT_HEALTHCHECK=false") passed to docker at container/service creation time. Of course, users could also overwrite the default HEALTHCHECK instruction using the flags Docker exposes.

Big question is: what would be the ideal way to determine Aerospike Server node health at a really basic level? Anything that requires use of the asinfo command then has a dependency on Aerospike Tools, which could be (or is even likely to be) a separate container in a Docker-ized environment. Alternatively, is there any way to implement this (again, at a very basic level) without Aerospike Tools?

I'm happy to give this a whirl myself via pull request if anyone can provide a little feedback on the above.

Can not start-up the docker with the access-address, version 3.5.4

Hi

this is exactly the same as #1 , but with different aerospike version

Apr 04 2015 23:50:41 GMT: CRITICAL (info): (thr_info.c:info_interfaces_static_fn:5074) external address:10.243.40.132 is not matching with any of service addresses:172.17.0.6:3000

any suggestions?

Thank you

AMC image request

AMC is very useful and it would be great to have it in registry as well.

Dockerfile:

FROM ubuntu:xenial

ENV AMC_VERSION 3.6.13
ENV AMC_SHA256 f55f5ef3108e7da7c112fb12ceb1dca017e567c6ba1d311f604948ae347da3f0

RUN \
  apt-get update -y \
  && apt-get install -y wget python-dev gcc \
  && wget "http://www.aerospike.com/artifacts/aerospike-amc-community/${AMC_VERSION}/aerospike-amc-community-${AMC_VERSION}.all.x86_64.deb" -O aerospike-amc.deb \
  && echo "$AMC_SHA256 aerospike-amc.deb" | sha256sum -c - \
  && dpkg -i aerospike-amc.deb \
  && rm -rvf aerospike-amc.deb \
  && dpkg -r wget ca-certificates \
  && dpkg --purge wget ca-certificates \
  && apt-get purge -y

EXPOSE 8081

CMD ["/opt/amc/bin/gunicorn", "--config=/etc/amc/config/gunicorn_config.py", "flaskapp:app"]

docker-compose.yml:

version: '2'
services:
  aerospike:
    restart: always
    container_name: aerospike
    image: aerospike/aerospike-server
    ports:
      - 3000:3000
      - 3001:3001 
      - 3002:3002
      - 3003:3003
    volumes:
      - $PWD/etc/aerospike.conf:/etc/aerospike/aerospike.conf
  
  amc:
    restart: always
    build: ./
    ports:
      - 8081:8081
    container_name: amc
    links:
          - aerospike

Unknown config parameter mesh-port when starting container

$ docker run --name test -P aerospike
Aug 23 2016 21:59:07 GMT: CRITICAL (config): (cfg.c:1309) line 48 :: unknown config parameter name 'mesh-port'
Aug 23 2016 21:59:07 GMT: WARNING (as): (signal.c:153) SIGINT received, shutting down
Aug 23 2016 21:59:07 GMT: WARNING (as): (signal.c:156) startup was not complete, exiting immediately

I'm using Docker for Mac 1.12.0-a on OS X El Capitan.

Is there a way to add indexes and sets on docker container creation?

Hi, I am new to devops world as a programmer I would like to have image that when built uses AS base docker image and then runs some aql commands.

What I have so far is:

FROM aerospike:latest AS base

RUN aql CREATE SET set1 && \
         aql CREATE SET set2 && \
         aql CREATE INDEX index1 ON Namespace.set1 (bin1) STRING

Obviously this wouldnt work, but I want to make these sets and indexes as I am creating docker image.

Can you guys help me out?

Cannot assign requested address on container without --net=host

Hi,
I'm currently running a 4 machines aerospike cluster with docker, each node is on a separate server.

The config

service {
        user root
        group root
        pidfile /var/run/aerospike/asd.pid
        service-threads 8
        transaction-queues 8
        transaction-threads-per-queue 8
        proto-fd-max 15000
}
logging {
        file /var/log/aerospike/aerospike.log {
                context any info
        }
        console {
                context any info
        }
}
network {
        service {
                address any
                port 3000
                access-address 1.2.112.154 virtual
        }
        heartbeat {
                mode mesh
                address 1.2.112.154
                port 3002
                mesh-seed-address-port 1.2.117.54 3002
                interval 150
                timeout 10
        }
        fabric {
                port 3001
        }
        info {
                port 3003
        }
}
namespace test {
        replication-factor 2
        memory-size 100G
        storage-engine device {
                file /opt/aerospike/data/test.dat
                filesize 100G
        }

The issue

Whe we run with

docker run --rm -ti --name aerospike -p 3000:3000 -p 3001:3001 -p 3002:3002 -p 3003:3003 -v /data/ssd/aerospike-db:/opt/aerospike/data -v /home/x/aerospike/conf:/etc/aerospike aerospike/aerospike-server asd --foreground

It appears that aerospike tries to bind 1.2.112.154 as mesh listen address. Since we do not use --net=host, the container is not aware that the host has this address. So the start fails.

Oct 27 2015 13:24:37 GMT: INFO (as): (as.c::415) initializing services...
Oct 27 2015 13:24:37 GMT: INFO (tsvc): (thr_tsvc.c::910) shared queues: 8 queues with 8 threads each
Oct 27 2015 13:24:37 GMT: INFO (hb): (hb.c::2485) heartbeat socket initialization
Oct 27 2015 13:24:37 GMT: INFO (hb): (hb.c::2499) initializing mesh heartbeat socket : 1.2.112.154:3002
Oct 27 2015 13:24:37 GMT: WARNING (cf:socket): (socket.c::245) bind: Cannot assign requested address

Is there clean way to bind the container on the host IP address and not use --net=host ?

Dockerfile best practices

I've been ramping up docker use within my company, and we happen to be starting to use Areospike as well. I'd thought I'd put my 2 cents in on how the Dockerfile could be improved and better align with Docker best practices. I could create pull requests for all these, but I wasn't sure if that would be over kill for these little items. If there are good reasons to not do these things, I'd like to know too since I'm still learning how to write proper Dockerfiles.

  1. The config file is placed into the image using ADD. COPY is preferred for static files that aren't downloaded: https://docs.docker.com/articles/dockerfile_best-practices/#add-or-copy
  2. CMD is used instead of ENTRYPOINT plus CMD. Basically it allows parameters to be passed to the main command via docker run without having to know the command being run. See: https://docs.docker.com/articles/dockerfile_best-practices/#entrypoint
  3. The UID the container will run as is root. The aerospike.conf is also set set to use root. It's undesirable to have a container run as root, and with some docker orchestration systems such as OpenShift 3 it may cause problems. It would be preferable to use an aerospike user/group with a high number UID/GID. There was actually a really informative and fun video put out by Red Hat at the last summit that explains best practices for running docker containers from a security perspective: https://youtu.be/a9lE9Urr6AQ
  4. If a non-root UID is used to run aerospike then a static UID/GID should be chosen so that the data in the defined VOLUME can be accessed by containers created from later versions of the image than the original.

"latest" docker tag missing

The latest tag is currently missing from the docker repository, please add this tag back.

(base) โžœ  ~ docker pull aerospike/aerospike-server
Using default tag: latest
Error response from daemon: manifest for aerospike/aerospike-server:latest not found: manifest unknown: manifest unknown

Service under port 3003 returns no dashboard

When I run aerospike using command docker run -d --name aerospike -p 3000:3000 -p 3001:3001 -p 3002:3002 -p 3003:3003 aerospike I expect dashboard to be available on port 3003. When I visit localhost:3003 the browser is in state pending infinitely.

"found a socket 0xnnnnn without an associated channel"

IOW: No cake!

Dec 11 2018 14:44:50 GMT: INFO (as): (as.c:319) <><><><><><><><><><>  Aerospike Community Edition build 4.3.0.2-8-g897920b  <><><><><><><><><><>                                                                   
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) # Aerospike database configuration file.                                                                                                                     
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)                                                                                                                                                              
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) # This stanza must come first.                                                                                                                               
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) service {                                                                                                                                                    
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   user root                                                                                                                                                  
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   group root                                                                                                                                                 
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.                                                      
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   pidfile /var/run/aerospike/asd.pid                                                                                                                         
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   service-threads 4                                                                                                                                          
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   transaction-queues 4                                                                                                                                       
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   transaction-threads-per-queue 4                                                                                                                            
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   proto-fd-max 15000                                                                                                                                         
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) }                                                                                                                                                            
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)                                                                                                                                                              
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) logging {                                                                                                                                                    
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)                                                                                                                                                              
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   # Log file must be an absolute path.                                                                                                                       
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   file /var/log/aerospike/log {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           context any info
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   # Send log messages to stdout
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   console {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           context any info
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) network {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   service {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           address any
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           port 3000
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # Uncomment the following to set the `access-address` parameter to the
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # IP address of the Docker host. This will the allow the server to correctly
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # publish the address which applications and other nodes in the cluster to
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # use when addressing this node.
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # access-address <IPADDR>
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # access-address 172.17.0.3
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   heartbeat {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)         address any
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # mesh is used for environments that do not support multicast
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           mode mesh
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           port 3002
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # use asinfo -v 'tip:host=<ADDR>;port=3002' to inform cluster of
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           # other mesh nodes
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           interval 150
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           timeout 10
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) #         mesh-seed-address-port 172.17.0.3 3002
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           mesh-seed-address-port 172.17.0.2 3002
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   fabric {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)       address any
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           port 3001
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   info {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)       address any
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           port 3003
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) namespace test {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   replication-factor 2
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   memory-size 1G
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   default-ttl 30d # 5 days, use 0 to never expire/evict.
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   #       storage-engine memory
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   # To use file storage backing, comment out the line above and use the
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   # following lines instead.
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   storage-engine device {
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           file /opt/aerospike/data/test.dat
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           filesize 4G
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)           data-in-memory true # Store data in memory in addition to file.
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)   }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922) }
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3922)
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3945) system file descriptor limit: 1048576, proto-fd-max: 15000
Dec 11 2018 14:44:50 GMT: INFO (hardware): (hardware.c:1854) detected 4 CPU(s), 4 core(s), 1 NUMA node(s)
Dec 11 2018 14:44:50 GMT: INFO (socket): (socket.c:2676) Node port 3001, node ID bb9030011ac4202
Dec 11 2018 14:44:50 GMT: INFO (config): (cfg.c:3988) node-id bb9030011ac4202
Dec 11 2018 14:44:50 GMT: INFO (namespace): (namespace_ce.c:87) {test} beginning cold start
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:3578) opened file /opt/aerospike/data/test.dat: usable size 4294967296
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:1044) /opt/aerospike/data/test.dat has 4096 wblocks of size 1048576
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:3127) {test} found all 1 devices fresh, initializing to random 4434616822074274795
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:1009) {test} loading free & defrag queues
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:948) /opt/aerospike/data/test.dat init defrag profile: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:1033) /opt/aerospike/data/test.dat init wblock free-q 4088, defrag-q 0
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:2350) {test} starting device maintenance threads
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:1587) {test} starting write worker threads
Dec 11 2018 14:44:50 GMT: INFO (drv_ssd): (drv_ssd.c:860) {test} starting defrag threads
Dec 11 2018 14:44:50 GMT: INFO (as): (as.c:379) initializing services...
Dec 11 2018 14:44:50 GMT: INFO (tsvc): (thr_tsvc.c:136) 4 transaction queues: starting 4 threads per queue
Dec 11 2018 14:44:50 GMT: INFO (hb): (hb.c:6775) added new mesh seed 172.17.0.2:3002
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:800) updated fabric published address list to {172.17.0.3:3001}
Dec 11 2018 14:44:50 GMT: INFO (partition): (partition_balance.c:199) {test} 4096 partitions: found 4096 absent, 0 stored
Dec 11 2018 14:44:50 GMT: INFO (hb): (hb.c:5504) updated heartbeat published address list to {172.17.0.3:3002}
Dec 11 2018 14:44:50 GMT: INFO (batch): (batch.c:732) starting 4 batch-index-threads
Dec 11 2018 14:44:50 GMT: INFO (batch): (thr_batch.c:373) starting 4 batch-threads
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:452) starting 8 fabric send threads
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:469) starting 16 fabric rw channel recv threads
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:469) starting 4 fabric ctrl channel recv threads
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:469) starting 4 fabric bulk channel recv threads
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:469) starting 4 fabric meta channel recv threads
Dec 11 2018 14:44:50 GMT: INFO (fabric): (fabric.c:475) starting fabric accept thread
Dec 11 2018 14:44:50 GMT: INFO (fabric): (socket.c:702) Started fabric endpoint 0.0.0.0:3001
Dec 11 2018 14:44:50 GMT: INFO (hb): (hb.c:7017) initializing mesh heartbeat socket: 0.0.0.0:3002
Dec 11 2018 14:44:50 GMT: INFO (hb): (hb.c:7046) mtu of the network is 1500
Dec 11 2018 14:44:50 GMT: INFO (hb): (socket.c:702) Started mesh heartbeat endpoint 0.0.0.0:3002
Dec 11 2018 14:44:50 GMT: INFO (nsup): (thr_nsup.c:1103) starting namespace supervisor threads
Dec 11 2018 14:44:50 GMT: INFO (demarshal): (thr_demarshal.c:886) starting 4 demarshal threads
Dec 11 2018 14:44:50 GMT: INFO (demarshal): (socket.c:702) Started client endpoint 0.0.0.0:3000
Dec 11 2018 14:44:50 GMT: INFO (info-port): (thr_info_port.c:300) starting info port thread
Dec 11 2018 14:44:50 GMT: INFO (info-port): (socket.c:702) Started info endpoint 0.0.0.0:3003
Dec 11 2018 14:44:50 GMT: INFO (as): (as.c:423) service ready: soon there will be cake!
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel
Dec 11 2018 14:44:50 GMT: WARNING (hb): (hb.c:3711) found a socket 0x2841700000000000 without an associated channel

CRITICAL (config): (cfg.c:4014) 1024 system file descriptors not enough, config specified 15000

root@21:~# nerdctl run --name as -p 3000:3000 aerospike/aerospike-server
link eth0 state up
link eth0 state up in 0
Aug 16 2021 01:41:40 GMT: INFO (as): (as.c:306) <><><><><><><><><><>  Aerospike Community Edition build 5.6.0.9  <><><><><><><><><><>
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) # Aerospike database configuration file.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) # This stanza must come first.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) service {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	user root
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	group root
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	pidfile /var/run/aerospike/asd.pid
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) #	service-threads 6 # cpu x 5 in 4.7 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) #	transaction-queues 6 # obsolete in 4.7 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) #	transaction-threads-per-queue 4 # obsolete in 4.7
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	proto-fd-max 15000
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) }
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) logging {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	# Log file must be an absolute path.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	file /dev/null {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		context any info
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	}
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	# Send log messages to stdout
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	console {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		context any info 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	}
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) }
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) network {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	service {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		address any
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		port 3000
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# Uncomment the following to set the `access-address` parameter to the
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# IP address of the Docker host. This will the allow the server to correctly
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# publish the address which applications and other nodes in the cluster to
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# use when addressing this node.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# access-address <IPADDR>
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	}
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	heartbeat {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990)         address any
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# mesh is used for environments that do not support multicast
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		mode mesh
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		port 3002
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# use asinfo -v 'tip:host=<ADDR>;port=3002' to inform cluster of
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		# other mesh nodes
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		interval 150
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		timeout 10
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	}
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	fabric {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	    address any
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		port 3001
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	}
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) }
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) namespace test {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	replication-factor 2
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	memory-size 1G
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	default-ttl 30d # 5 days, use 0 to never expire/evict.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	nsup-period 120
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	#	storage-engine memory
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	# To use file storage backing, comment out the line above and use the
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	# following lines instead.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	storage-engine device {
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		file /opt/aerospike/data/test.dat
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		filesize 4G
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 		data-in-memory true # Store data in memory in addition to file.
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 	}
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) }
Aug 16 2021 01:41:40 GMT: INFO (config): (cfg.c:3990) 
Aug 16 2021 01:41:40 GMT: CRITICAL (config): (cfg.c:4014) 1024 system file descriptors not enough, config specified 15000
Aug 16 2021 01:41:40 GMT: WARNING (as): (signal.c:166) SIGINT received, shutting down Aerospike Community Edition build 5.6.0.9 os debian10
Aug 16 2021 01:41:40 GMT: WARNING (as): (signal.c:169) startup was not complete, exiting immediately
root@21:~# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 63401
max locked memory       (kbytes, -l) 65536
max memory size         (kbytes, -m) unlimited
open files                      (-n) 100000
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 63401
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

5.6.0.7

Hey,

I would like to know if there is any chance to make the 5.6.0.7 image available ?

If it's your roadmap, can you tell me when it's going to be available ?

Thanks

Tagging

It is possible to have correct tagging for aerospike releases?

Currently there is only possible to install 3.10.1.1 or latest. What about 3, 3.10 and 3.10.1 ? The first two would be useful.

Also are you aware of the vulnerabilities showed here? https://hub.docker.com/r/library/aerospike/tags/latest/

ARM64 support

I am trying to build Aerospike package for ARM64v8 architecture.
After checking the dependencies, I can notice that Aerospike-server Docker is fetching the prebuilt x86_64 package from Aerospike server, and the same is not available for ARM64.

For this, I have started compile Aerospike-server source code and I have managed to compile the get resultant package too.
The changes include the use of LuaJIT-2.1.0-beta3 and some minor changes.

Also, I am able to run the package on my arm64v8 board.

Please let me know, what should be next step to get aerospike in official arm64v8 repository.
Also do guide me, whether this is the right approach or is there any other way too.

Regards,

NAMESPACE env not working

Run

docker run -e "NAMESPACE=aerospike-demo" aerospike/aerospike-server
docker exec -it <...> bash
aql
show namespaces

And it prints:

+------------+
| namespaces |
+------------+
| "test"     |
+------------+
[127.0.0.1:3000] 1 row in set (0.001 secs)

OK

Should have been aerospike-demo right?

Docker remote connexion client to server

Elements of context

  • Aerospike latest version inside a Docker container
  • 4 nodes cluster on separate physical machines
  • Docker 1.8.3
  • Debian Jessie - 3.16.0-4-amd64
  • The issue is present when I run a container on the very same host that has the Docker container.

Issue

The Docker container with a python (or whatever) client run on the same server that hosts the Aerospike server is able to reach each node of the cluster except for aerospike hosted on the same server.
The workaround that I found was to run the client with --net=container:aerospike to share the same networking stack.

Can not start-up the docker with the access-address

To allow the access from outside and allow the server in docker on different hosts to communicate with each other, I set the access-address to the Docker host ip. However, it failed to start. The config and logs as below:

network {
        service {
                address any
                port 3000
                access-address $HOST_IP
        }
        heartbeat {
                # mesh is used for environments that do not support multicast
                mode mesh
                port 3002
                # use asinfo -v 'tip:host=<ADDR>;port=3002' to inform cluster of
                # other mesh nodes
                mesh-seed-address-port 10.10.99.129 3002
                interval 150
                timeout 10
        }
......
}

,
the failed log is:

Nov 18 2014 08:38:09 GMT: INFO (as): (as.c::408) initializing services...
Nov 18 2014 08:38:09 GMT: INFO (drv_ssd): (drv_ssd.c::1666) ns test starting write worker threads
Nov 18 2014 08:38:09 GMT: INFO (tsvc): (thr_tsvc.c::998) shared queues: 4 queues with 4 threads each
Nov 18 2014 08:38:09 GMT: INFO (drv_ssd): (drv_ssd.c::811) ns test starting defrag threads
Nov 18 2014 08:38:09 GMT: INFO (hb): (hb.c::2434) heartbeat socket initialization
Nov 18 2014 08:38:09 GMT: INFO (hb): (hb.c::2448) initializing mesh heartbeat socket : 0.0.0.0:3002
Nov 18 2014 08:38:09 GMT: INFO (info): (thr_info.c::4940) static external network definition
Nov 18 2014 08:38:09 GMT: CRITICAL (info): (thr_info.c:info_interfaces_static_fn:4954) external address:10.10.99.128 is not matching with any of service addresses:172.17.0.7:3000
Nov 18 2014 08:38:09 GMT: WARNING (as): (signal.c::70) SIGABRT received, aborting Aerospike Community Edition build 3.3.21

Automatically load database dump at container startup

Hi,

I would like to know if there would be a way to start the aerospike-server container and automatically restore a dump after the server has started.
My goal is to provide an easy way for developers to start the container with a dump from staging or production (mounted as volume or burnt into a custom image), so that they can work locally with a dataset from one of these environment.

I have not find anything in the entrypoint that could make this possible.
I know that official Postgresql or mongodb images provide this kind of feature, as you can run a script or load a dump that is located in a folder like /docker-entrypoint-initdb.d. The script is run after the server is started so that you can automate any task, such as a database restore, create users , etc ..., when the container starts.

Is a feature like this planned in the future ?
Or could you provide some guidance in order to achieve this ?

Thank you for your help

Running on M1

Hi.

Try to run
docker run -d --name aerospike -p 3000-3002:3000-3002 aerospike/aerospike-server:latest
on mac with m1 proc. And container exited with error. Also try to run with --platfrom flag.

Logs:

โžœ  ~ docker logs aerospike
/entrypoint.sh: line 35: FEATURE_KEY_FILE: unbound variable
link eth0 state up
link eth0 state up in 0
Dec 01 2022 22:10:03 GMT: WARNING (hardware): (hardware.c:426) invalid index in /sys/devices/system/cpu/cpu0/topology/physical_package_id
Dec 01 2022 22:10:03 GMT: CRITICAL (hardware): (hardware.c:605) error while reading OS package index from /sys/devices/system/cpu/cpu0/topology/physical_package_id
Dec 01 2022 22:10:03 GMT: WARNING (as): (signal.c:217) SIGUSR1 received, aborting Aerospike Community Edition build 6.2.0.0 os debian11
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:621) stacktrace: registers: rax 0000000000000000 rbx ffffffffffffffff rcx 0000000000000027 rdx 0000000000000000 rsi 0000004007bc8c30 rdi 0000000000000002 rbp 000000000000000a rsp 0000004007bc8c30 r8 0000000000000000 r9 0000004007bc8c30 r10 0000000000000008 r11 0000004007f23ea0 r12 00000040063c3f20 r13 0000004007bc92f0 r14 0000004007bc8e78 r15 000000400029a248 rip 0000004007f23fe1
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:633) stacktrace: found 11 frames: 0x160ad9 0xc6622 0x4007f24140 0x4007f23fe1 0x16051c 0x15817a 0x15c156 0x51d5d 0x50c49 0x40082a6d0a 0x513aa offset 0x4000000000
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 0: asd(cf_log_stack_trace+0xe8) [0x4000160ad9]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 1: asd(as_sig_handle_usr1+0x1d) [0x40000c6622]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 2: /lib/x86_64-linux-gnu/libpthread.so.0(+0x13140) [0x4007f24140]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 3: /lib/x86_64-linux-gnu/libpthread.so.0(raise+0x141) [0x4007f23fe1]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 4: asd(cf_log_write_no_return+0x86) [0x400016051c]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 5: asd(+0x15817a) [0x400015817a]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 6: asd(cf_topo_config+0x23) [0x400015c156]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 7: asd(as_run+0x199) [0x4000051d5d]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 8: asd(main+0x9) [0x4000050c49]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 9: /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xea) [0x40082a6d0a]
Dec 01 2022 22:10:03 GMT: WARNING (as): (log.c:644) stacktrace: frame 10: asd(_start+0x2a) [0x40000513aa]
qemu: uncaught target signal 6 (Aborted) - core dumped

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.