docker icon indicating copy to clipboard operation
docker copied to clipboard

Running on Raspberry Pi?

Open gianlazz opened this issue 6 years ago • 3 comments

I've read this article which has lead me to believe that this can be done: https://www.citusdata.com/blog/2015/03/09/citus-raspberry-pi-2/

However it's outdated and doesn't have any specific details on the setup. When I run docker-compose up on my Raspberry Pi like in the examples it throws the following errors:

pi@raspberrypi:~/citus $ docker-compose up -d
WARNING: The Docker Engine you're using is running in swarm mode.

Compose does not use swarm mode to deploy services to multiple nodes in a swarm. All containers will be scheduled on the current node.

To deploy your application across the swarm, use `docker stack deploy`.

Starting citus_master ... done

ERROR: for manager  Container "f8b7d4d7c2ce" is unhealthy.
ERROR: Encountered errors while bringing up the project.

Is this because the base Postgres image that the dockerfile uses is for the default x86 postgres image?

gianlazz avatar Feb 26 '19 01:02 gianlazz

So I went ahead and cloned the repo then modified the Dockerfile to use the arm64v8 postgres image and ran docker build -t arm64v8/citus:8.1.1-1 .

I then ran into another error which I think comes from this line in the Dockerfile: curl -s https://install.citusdata.com/community/deb.sh | bash

I checked this shell script out and found the following comment in it:

arch_check ()
{
  if [ "$(uname -m)" != 'x86_64' ]; then
    echo "Unfortunately, the Citus repository does not contain packages for non-x86_64 architectures."
    echo
    echo "Please contact us via https://www.citusdata.com/about/contact_us with any issues."
    exit 1
  fi
}

Is there any route I can take to compile my own arm Citus packages?

gianlazz avatar Feb 26 '19 01:02 gianlazz

Is there any route I can take to compile my own arm Citus packages?

Rather than packaging for Arm, it would probably be easiest to just check out github.com/citusdata/citus and ./configure && make && make install. This isn't something we've done in the recent past (that post is around four years old), and (as you found) isn't a supported architecture, so no guarantees it'll even compile, but feel free to open an issue or two over there if you run into compiler errors, etc.

jasonmp85 avatar Feb 26 '19 17:02 jasonmp85

(It's at least good the RPi is 64-bit now, since I know we've got some 32-bit issues)

jasonmp85 avatar Feb 26 '19 17:02 jasonmp85