

It turns out that two key decisions made by the MongoDB developers have led to this situation. Problem #5: Floating-Point Alignment on ARM.It turned out that this was quite a rabbit hole, and I ended up encountering a number of bugs in various other pieces of software. As a result, I decided to manually build the latest compatible version of MongoDB for this system, since I have no desire to purchase hardware or migrate to a different platform. This is problematic, because the UniFi Controller software, which manages my Ubiquiti UniFi access points, is installed on this system and it requires MongoDB. But after doing so, I discovered that MongoDB is no longer available in the repository, as upstream seemed to have stopped supporting it. Recently, I upgraded my ODROID-XU4, an eight-core embedded ARM-based platform with USB 3.0, Gigabit Ethernet, and 2GB RAM, to Ubuntu 18.04. ODROID-XU3/XU4/C1, Raspberry Pi 1/2, BeagleBoard, etc.) running Ubuntu 18.04 or compatible Debian-based distributions are available here. # it will run the command and remove himself (it will not stay running)Ĭommand: 'bash -c "for i in `seq 1 30` do mongo mongo/rocketchat -eval \"rs.initiate( )"ĭocker-compose up -d & docker-compose logs -fĪnd, again, if you don't see any errors.Pre-built MongoDB 3.2 packages for 32-bit ARM systems with hardware floating-point support (e.g. # this container's job is just run the command to initialize the replica set. My first step, after logging into my virtual machine via SSH as the unprivileged user that I created to run docker commands, was to update my docker-compose.yml file (if you followed my previous instructions, you'll find it in /home/docker-compose.yml-mongo3.4Ĭommand: -smallfiles -oplogSize 128 -replSet rs0 You have to enable a capability called "Local Replication". The first thing you need to do is upgrade the way in which you're running MongoDB. And it turns out upgrading everything has a few gotchas, so here's how I managed to do it.īefore you do anything do a backup of your MongoDB!

Previously, I showed how to install Rocket.Chat via Docker Compose but that was a much earlier version of Rocket.Chat and version 3.4 of MongoDB, which is now quite old (by FOSS standards at least).


With the recent release of Rocket.Chat 1.0.x (after a couple years undergoing development at a fairly blistering pace), it's time for many of us to upgrade!
