The universal meteor fork is great and I haven’t had any problems with stability and installation is a breeze. I don’t think you could use MUP since it’s still going to be missing all of the binary dependancies to run meteor on the ARM processor of the Pi.
As far as launching a meteor app on startup, this is what worked for me:
- Created a systemd unit file at /etc/systemd/system/meteor.service with the following contents:
WorkingDirectory=/home/pi/<meteor app repo>
then run the following commands to startup the new service
sudo systemctl daemon-reload # reloads all the services from disk
sudo service crucible start # or stop | restart | status ...
This starts up meteor, but on port 3000. The only way I figured out how to forward port 80 to meteor automatically on boot was to change the rc.local file to:
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
# In order to enable or disable this script just change the execution
# By default this script does nothing.
iptables -t nat -I OUTPUT -p tcp -d 127.0.0.1 --dport 80 -j REDIRECT --to-ports 3000
iptables -t nat -I PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
I did this a few months ago and my notes are a little rusty. I might have had to change the TimeoutSec to 15 seconds in the /lib/systemd/system/rc-local.service file, but I’m not sure.
Also, I’m pretty sure this can be condensed and made simpler, but I had to move on once I got it working.
Let me know if you have any questions!