Code Monkey home page Code Monkey logo

docker-kdb's Introduction

docker-kdb+

A minimal (Alpine Linux) docker container for running KDB+

What is this?

Running KDB+ in Docker should be simple, and small. KDB+ is a tiny executable that is renowned for its ultra-efficient consumption of resources. Running it under 300MB of Linux feels like overkill, but many of the smaller linux distros have no simple way of including the 32-bit c libs required for KDB+, without complicated chroot / multi--arch setups. This little project deals with that, providing a small footprint Alpine Linux, with 32-bit lib support, and an environment configured to run KDB+.

How to use it?

First, clone or download this repo. When done, you'll need to download your free 32-bit KDB+ (I can't distribute here) for Linux. It's available here: https://kx.com/download/ When you've downloaded KDB+, zip up the q folder as q.zip, and copy into this folder, build, and run your docker image as described below.

Build Docker image

Obvs, you need to have docker installed - get it from https://www.docker.com if you haven't already. Then open up a terminal, cd into this directory and type: docker build -t <your_username>/docker-kdb .

Run Docker image

Once you've built your image, you can run it. You can pass in a set of arguments with your run command, that the 'entrypoint' will pick up and execute. A simple run invocation to start q serving on port 5001 might resemble: docker run -it <your_username>/docker-kdb:latest q -p 5001

Can I extend it?

Yep. This implementation is deliberately super-simple, the entrypoint.sh is completely customisable, and you can hack it in any way you see fit to deliver what you need. Enjoy!

docker-kdb's People

Contributors

andymans 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

Watchers

 avatar  avatar  avatar  avatar  avatar

docker-kdb's Issues

/entrypoint.sh: permission denied": unknown.

docker run -it sohail/docker-kdb:latest /bin/bash -p 5001
Causes the following error:
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "exec: "/entrypoint.sh": permission denied": unknown.

kdb+/q 32-bit (No Fee - Non Commercial) no longer available

Description of the issue

Hi,

Thank you for your work.
I've recently seen that KX had terminated their 32-bit version of kdb+/q (No Fee - Non Commercial), and it is no longer possible to download a zip file, needed in your work.

As newer version of 32-bit source won't be released and KX specifies this:

Kdb+ on demand 64 bit personal edition is for your personal, non-commercial use. It may be used on up to 2 computers, to a maximum of 24 cores per computer. It cannot be used on any cloud, only your local environment. Kdb+ on demand requires an always on internet connection to operate.

for their 64-bit version, do you have any alternative for an operational Docker image for kdb+, or any upgrade to your work ?

Thank you.

Screenshots

image

References

add ssl support to kdb

#setting ssl
28 RUN cd /usr/lib && ln -s libssl.so.45 libssl.so
29 ENV SSL_VERIFY_SERVER NO

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.