Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Feature: Docker armhf support #1041
I have created platform support for the
I have an
I tried all three variants from here, all the same: https://shaarli.readthedocs.io/en/master/docker/shaarli-images/ I have seen this type of error before when accidentally ran a wrong platform repo from https://tools.linuxserver.io/dockers
So I looked into your dockerfile, and you are using Alpine Linux (I wanted the
I pushed my modifications to Github, you can find my changes in this pull request to the
I think the
I have no experience with linuxserver.io Docker images, I trust you that they are good quality work, but this addition would make us dependent on a third party/custom image on which we have no control. Not necessarily a hug problem but this is something to consider.
On the other hand Alpine provides official
I agree that Docker ARM support would be great, I'd just like to think this through.
@nodiscc You can see on their website how many downloads they have, and they are an active community, available on chat/forum etc. All of their armhf images depend on the base I used, so I suppose that it is surely a good and stable origin for the build. If the Alpine arm32v6 would be supported by my board then your images would definitely run for the first time, wouldn't it? But it's clearly not running and the error is only present if the build is not for the architecture. When I used the armhf version, it ran immediately (but also needed the added chmods to run). Alpine is not yet fully supporting multiplatform, so I think it is advisable to use a build specifically made for the platform for best results (and for me to be able to run it:D).
@virtualtam It's an ODroid HC-1 from Hardkernel.com, you can see the specifications on the bottom of this page:
Makes sense, and it answers my question. Nice board by the way, limited base OS choices as far as I can see, but the price/perf difference with other ARM boards makes me want to look into it. Do you run all your services/applications dockerized? Is finding ARM-compatible software challenging?
I've merged #1036 (documentation update), we should also update the Installation/Docker docs for your setup:
Originally, I wanted the latest RPi but then I found the DietPi board collection here: http://dietpi.com By clicking on the board images there is a nice pro/con section and introduction to every supported model with some relative charts. Here I recognized that although the RPis have much larger user base, they have many flaws that makes them good for first time users but unprofessional choice for "production" use. For example they have USB2 ports via an USB hub while other boards support USB3 on the SOC level, or they have standard Ethernet while others offer gigabit ethernet, etc. So the best option seemed to be the ODroid family, especially the C2 (older) and the XU4 (newest). I waited so long on the buy that in the meantime they started producing the HC-1 variant that even more catched my eyes. This small piece is beefed up like the C2/XU4 but solves the heat problem of the previous two by adding that enormous heat sink that is also holding the HDD/SSD. One USB3 port of the SOC is used by the SATA connector, one is backing the gigabit ethernet connector and the single USB2 bus is unused and has a spare connector on the front. It makes software RAID1 possible or doing regular backups to another HDD. What is more, if you want to extend your setup, you can stack them on top of each other and can have them joined in an array. There is this ODroid Magazine that is published like a blog regularly, in the current and previous issue they built up a distributed replicated GlusterFS server-client storage system, even the images are speaking for themselves but also a nice read:
Oh boy, these boards are definitely under the radar currently! They even have an MC-1 (My Cluster) variant in their shop that is 4 pieces of xu4 boards tied together that has 32 cores and 8 GB of ram as a cluster. The XU4 is the base platform that can be used in many ways, hence the MC-1 and my HC-1 is present. Early next year, the HC-2 will be released which will be the same as the HC-1 but will be capable of handling a 3.5 inch HDD as the HC-1 only supports the 2.5 format. All these variants will be supported and actively developed by Hardkernel until at least 2020, so won't disappear in a couple of months.
I'm currently running linuxserver.io 's letsencrypt-armhf docker image (alpine+letsencrypt+nginx reverse proxy+fail2ban) and the provided shaarli-armhf image parallel but also planning to set up nextcloud in the near future. The ram and speed is enough for all the things I could want at home. For HC-1, the OpenMediaVault (based on Debian Jessie) OS is a good start for a headless server, the web administration is easy to use and as docker is available as a native OMV plugin, you can deploy almost anything you want. If you are minimalist, the DietPi OS seems to me the perfect choice. If you have the XU4 that has HDMI port, then the linked Ubuntu is yours. The fact that I ran into the problem of architecture here only means nobody tried to run Shaarli on such board before or haven't shared the modified docker image. I think any not-armhf images that are based on Alpine could be simply migrated by replacing the FROM part to what I used without problem, so if I run into the same error in the future this is what I'll try again.
I would ask you guys to make the mentioned docker docs and guides changes, I'm not so sure I would be the best choice for this task as you know it better than me, this is your playground here :)