Git Product home page Git Product logo

rqlite-docker's Introduction

Circle CI AppVeyor Go Report Card Release Docker Office Hours Slack Google Group

rqlite is a relational database which combines SQLite's simplicity with the power of a robust, fault-tolerant, distributed system. It's designed for easy deployment and lightweight operation, offering a developer-friendly and operator-centric solution for Linux, macOS, and Windows, as well as various CPU platforms.

Check out the rqlite FAQ.

Why run rqlite?

rqlite is your solution for a rock-solid, fault-tolerant, relational database with effortless installation, deployment, and operation. It's ideal as a lightweight, distributed relational data store for both developers and operators. Think Consul or etcd, but with relational modeling available.

You can use rqlite to store your important data reliably, ensuring it's always available. If you're interested in understanding how distributed systems actually work, it's a good example to study. A lot of thought has gone into its design, separating storage, consensus, and API clearly.

Key features

More questions?

Pronunciation

Common pronunciations of rqlite include "R Q lite" and "ree-qwell-lite".

rqlite-docker's People

Contributors

arrkiin avatar bigg01 avatar lordgnu avatar otoolep 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

Watchers

 avatar  avatar  avatar  avatar

rqlite-docker's Issues

Add ARM support

From what I see in rqlite/rqlite#340 it should be possible to build ARM images and push them to Docker hub.
I've noticed that Netmaker 0.7 uses rqlite as recommended and default data storage. But their official documentation doesn't mention that installation via Docker will fail on arm-based computers.

Switch to lighter, smaller base image

The current image is based of Ubuntu yaketty. This image is >100MB, which is a shame considering rqlited is ~6MB. A smaller base image -- perhaps based on Alpine -- would be better.

fails on 4.3.0, works with FROM ubuntu:17.10

4.3.0:
Ign:43 http://archive.ubuntu.com/ubuntu yakkety-backports/universe amd64 Packages
Reading package lists...
W: The repository 'http://security.ubuntu.com/ubuntu yakkety-security Release' does not have a Release file.
W: The repository 'http://archive.ubuntu.com/ubuntu yakkety Release' does not have a Release file.
W: The repository 'http://archive.ubuntu.com/ubuntu yakkety-updates Release' does not have a Release file.
W: The repository 'http://archive.ubuntu.com/ubuntu yakkety-backports Release' does not have a Release file.
E: Failed to fetch http://security.ubuntu.com/ubuntu/dists/yakkety-security/universe/source/Sources 404 Not Found [IPFROM ubuntu:17.10
: 91.189.88.162 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/yakkety/universe/source/Sources 404 Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/yakkety-updates/universe/source/Sources 404 Not Found [IP: 91.189.88.161 80]
E: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/yakkety-backports/main/binary-amd64/Packages 404 Not Found [IP: 91.189.88.161 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.

docker image size too big

Thanks for your good work that everyone could pull or build image so easy. Great!
While, the image is a bit bigger than I guess. Could you update with alpine image? It seems to be 33MB vs 161MB.
If official update it may be a good choice. All rights to you.

below for reference:

FROM alpine
ENV RQLITE_VERSION=5.5.0

RUN   apk update && apk add curl && \
    curl -L https://github.com/rqlite/rqlite/releases/download/v${RQLITE_VERSION}/rqlite-v${RQLITE_VERSION}-linux-amd64.tar.gz -o rqlite-v${RQLITE_VERSION}-linux-amd64.tar.gz && \
    tar xvfz rqlite-v${RQLITE_VERSION}-linux-amd64.tar.gz && \
    cp rqlite-v${RQLITE_VERSION}-linux-amd64/rqlited /bin && \
    cp rqlite-v${RQLITE_VERSION}-linux-amd64/rqlite /bin && \
    rm -fr rqlite-v${RQLITE_VERSION}-linux-amd64 rqlite-v${RQLITE_VERSION}-linux-amd64.tar.gz && \
    rm -rf /var/cache/apk/* && \
    mkdir -p /rqlite/file

VOLUME /rqlite/file

EXPOSE 4001
ExPOSE 4002

CMD ["rqlited", "-http-addr", "0.0.0.0:4001", "-raft-addr", "0.0.0.0:4002", "/rqlite/file/data"]

Rqlited does not start in docker swarm mode

Rqlited service does not start in docker service.

When I use the docker definition of the 4.5.0 version with my own docker-entrypoint.sh with this content

#!/bin/bash

if [ "x" == "x${JOIN_ADRESS}" ]; then
        exec rqlited -http-addr ${HOSTNAME}:4001  /rqlite/file/data
else
        exec rqlited -http-addr ${HOSTNAME}:4001  -join http://${JOIN_ADRESS}:4001  /rqlite/file/data
fi

and when I launch it with this compose file whith the cmd docker stack deploy -c docker-compose.yml rqlite

version: "3.3"

networks:
  rqlite:

services:
 rqlite1:
    image: sginer/rqlite:4.5.0
    environment:
      NODE_ID: "1"
      HOSTNAME: "rqlite1"
    networks:
      - rqlite

  rqlite2:
    image: sginer/rqlite:4.5.0
    environment:
      NODE_ID: "2"
      HOSTNAME: "rqlite2"
      JOIN_ADRESS: "rqlite1"
    networks:
      - rqlite

 rqlite3:
    image: sginer/rqlite:4.5.0
    environment:
      NODE_ID: "3"
      HOSTNAME: "rqlite3"
      JOIN_ADRESS: "rqlite1"
    networks:
      - rqlite

rqlite is unable to elect leader and to start !

Problem running the container after build

Hi, I'm using your latest Dockerfile and the docker-entrypoint.sh file, however I getting the following error when I then try to run the container.

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "docker-entrypoint.sh": executable file not found in $PATH: unknown.
ERRO[0000] error waiting for container: context canceled

I need to manually build since you don' currently provide a linux-arm image.

I tested this on OSX too and got the same error.

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.