Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 01 22:36
    zodern synchronize #1209
  • Dec 01 22:36

    zodern on dev

    Fix base image for tests (compare)

  • Dec 01 21:50
    zodern synchronize #1209
  • Dec 01 21:50

    zodern on dev

    Update changelog (compare)

  • Dec 01 21:39
    zodern opened #1209
  • Dec 01 21:38

    zodern on dev

    Update dependencies (compare)

  • Dec 01 21:34
    zodern closed #866
  • Dec 01 21:34
    zodern closed #1195
  • Dec 01 21:34

    zodern on dev

    Fix Swarm docs (compare)

  • Dec 01 21:33
    zodern commented #1154
  • Dec 01 21:33
    zodern closed #1154
  • Dec 01 21:33
    zodern commented #1154
  • Dec 01 21:32

    zodern on dev

    Get node version from files in … Fix checking module not found e… (compare)

  • Dec 01 19:45
    zodern milestoned #1183
  • Dec 01 19:45
    zodern commented #1183
  • Dec 01 19:44

    zodern on dev

    Add mup mongo shell command Show warning on Node 14 (compare)

  • Dec 01 09:42
    derwaldgeist commented #1183
  • Nov 30 21:02
    zodern commented #1183
  • Nov 30 17:38
    kevinashworth commented #1183
  • Nov 30 09:53
    derwaldgeist commented #1183
zodern
@zodern
Version 0.6.4 of mup-aws-beanstalk is now available, which is compatible with mup 1.5.
zodern
@zodern
Version 0.4 of mup-netdata is now available, with options to give more control over the memory usage
zodern
@zodern
I published a new plugin to receive slack notifications for deploys: https://www.npmjs.com/package/mup-deploy-notifications
Renan LE CARO
@renanlecaro
Just wanted to thank you all for the work on MUP. It saved my ass when heroku was losing the mongoLab addon. I could move my app from heroku to digitalocean flawlessly, in one afternoon, and it now runs better for a cheaper price. You guys are my heroes ! I was thinking about killing that app because of the hassle of fixing the performance issues, and i can see a future for it now that it's running on a more beefy server that makes it usable for my users. Said users (vegetable farmers in france and belgium) are also grateful that the service will keep running, as they use it everyday for the commercialization of their produce. Just wanted to give you all a reminder of the good you're doing by maintaining MUP. Cheers !
Laurent Roger
@lc3t35
@renanlecaro Hi Renan, nice to hear ! I’ve noticed you didn’t setup https which would be better ;)
Renan LE CARO
@renanlecaro
@lc3t35 i'm not sure of what you are talking about, the app in question is proxied by cloudflare to have https between the browser and cloudflare : https://app.ciboulette.net/
I think cloudflare is hitting the server with non ssl requests, but i'm curious of how you'd know that now ^^
zodern
@zodern
Thanks @renanlecaro. It is encouraging to hear how mup is used.
Renan LE CARO
@renanlecaro
I've published a small article about how to automate the backup of a MUP instance to your own computer on ubuntu
https://renanlecaro.github.io/automating-backups-of-digital-ocean-meteor-up-install-to-your-ubuntu-workstation.html
I'm using it and that worked fine, but i edited it a bit to make it easier to customize and that might have introduced some errors ^^
zodern
@zodern
Thanks for sharing. Adding backup to mup is the most up voted feature. If you want, you could share your article at zodern/meteor-up#364.
1 reply
@MyClassGame
@MyClassGame_twitter
Hi!!!
I'm trying to deploy a Meteor App with mup but I'm having problems with CPU usage
And I don't know what to do
I've found that it's better not to use oplog with mongodb, but I don't know how to disable MONGO_OPLOG_URL
1 reply
What do yo recommend me?
Laurent Roger
@lc3t35
find why cpu is high using meteor’s apm package : https://montiapm.com
Erik Demaine
@edemaine
https://meteor-up.com/docs.html#swarm says that swarm is required for load balancing and zero-downtime deploys, while https://zodern.me/posts/meteor-up-1-5/ seems to suggest that this can be done just with nginx proxy. Which is right?
Erik Demaine
@edemaine
Also, does anyone have a sample configuration for medium-scale deploy? Do people typically run proxy, mongodb, and n meteor instances on n+2 different machines?
zodern
@zodern
@edemaine load balancing can be done with either swarm, or enabling the option for the proxy. This changed when 1.5 was almost finished, but the docs haven't been updated.
If you use let's encrypt, the proxy can only be run on one server. If you want to run the proxy on multiple servers, you can create the certificates from a different source and have Meteor Up upload them to each server. For one app that I want multiple load balancers for, I use https://support.cloudflare.com/hc/en-us/articles/115000479507-Managing-Cloudflare-Origin-CA-certificates.
zodern
@zodern
For medium scale deploys of a production app you might want to:
  • If you use Let's encrypt, have one server with the proxy. If your Meteor app uses a lot of CPU or you have a large number of requests per second you might want this on a separate server. Mup 1.6 will likely support high availability for the proxy when using a floating IP address and multiple servers, but right now it is a single point of failure.
  • Use Atlas or another Mongo hosting service, or run a replica set yourself
  • Run the app on 3+ servers for high availability and spreading the load
  • Optionally use a private docker registry for faster deploys: http://meteor-up.com/docs.html#private-docker-registry
Erik Demaine
@edemaine
Thanks @zodern!! My app currently seems to be CPU-limited, and most of that seems to be the Meteor processes, so I'll try 1 host for proxy, 1 host for Mongo (though maybe those two could be merged), and 3+ hosts for Meteor, for starters anyway.
Erik Demaine
@edemaine
Oh, and redis. I guess I'll try putting that on the proxy host...
Zamil Murji
@zmurji
I'm looking to support a static site at the domain (e.g. example.com) on an AWS EC2 instance.
I'd like to run the meteor app at a subdomain for the same domain (e.g. mysubdomain.example.com)
Currently I have the mysubdomain.example.com working and I'd like some help with getting the static site working. Can anybody provide an example mup.js file that does what I'm looking for? Do I need to build a docker image with my static site?
Thanks in advance for everyone's help
Zamil Murji
@zmurji
I should mention I want everything on the same AWS EC2 instance
zodern
@zodern

I had considered building a plugin for static websites, but I've switched to using Netlify or similar services. Would you mind sharing why you want to host your static site on the server instead of using a service? If there is enough interest I might still build the plugin.

These would be the two easiest options:

  1. Use https://www.npmjs.com/package/mup-docker-deploy with a custom dockerfile
  2. Create a simple node server (maybe with express and the static middleware) to serve the static files and deploy with https://www.npmjs.com/package/mup-node
Zamil Murji
@zmurji
I didn't want to have the static website and meteor site on two different servers or services. Trying to keep everything on one EC2 instance. Reading the docs a bit more, can I use env PORT to solve my problem? If I set env PORT for the app to something other than 80 (say 5000 like the example in the doc), would subdomain work to connect to that port automatically? I could then use my current nginx setup for the static website on the server that binds to port 80/443
Zamil Murji
@zmurji
initially when I had the nginx server running on port 80/443, mup was failing as it couldn't bind to that port. will give it a try and post my results.
Erik Demaine
@edemaine
In case anyone would like an example configuration for a multiple-machine deployment, here is one, along with description / recommended configuration.
Laurent Roger
@lc3t35
thank you @edemaine, did you also study how to upscale mongo ?
Grzegorz Pociejewski
@pociej
hi, is here anyone who can help me with SSL setup ?
Im trying to run mup proxy setup but i got

```Started TaskList: Setup proxy
[46.101.130.237] - Setup Environment
[46.101.130.237] - Setup Environment: SUCCESS
[46.101.130.237] - Pushing the Startup Script
[46.101.130.237] - Pushing the Startup Script: SUCCESS
[46.101.130.237] - Pushing Nginx Config Template
[46.101.130.237] - Pushing Nginx Config Template: SUCCESS
[46.101.130.237] - Pushing Nginx Config
[46.101.130.237] - Pushing Nginx Config: SUCCESS
[46.101.130.237] - Cleaning Up SSL Certificates
[46.101.130.237] - Cleaning Up SSL Certificates: SUCCESS
[46.101.130.237] - Copying SSL Certificate Bundle
[46.101.130.237] - Copying SSL Certificate Bundle: SUCCESS
[46.101.130.237] - Copying SSL Private Key
[46.101.130.237] - Copying SSL Private Key: SUCCESS
[46.101.130.237] - Setup SSL Certificates for Domains
[46.101.130.237] - Setup SSL Certificates for Domains: SUCCESS
[46.101.130.237] - Configure Nginx Upstream
[46.101.130.237] - Configure Nginx Upstream: SUCCESS

Started TaskList: Start proxy
[46.101.130.237] - Start proxy
[46.101.130.237] x Start proxy: FAILED

      ------------------------------------STDERR------------------------------------
      Error response from daemon: endpoint mup-nginx-proxy not found
Error response from daemon: network mup-proxy not found
Error: No such container: mup-nginx-proxy-letsencrypt
Error response from daemon: endpoint mup-nginx-proxy-letsencrypt not found
Error response from daemon: network mup-proxy not found
docker: Error response from daemon: driver failed programming external connectivity on endpoint mup-nginx-proxy (057cfe2e00d4b1ee883bd96e44eee00af88d5afc490dfc4b33bb724954e5a323): Bind for 0.0.0.0:80 failed: port is already allocated.

      ------------------------------------STDOUT------------------------------------
      mup-nginx-proxy
Removed mup-nginx-proxy
Removed mup-nginx-proxy-letsencrypt
latest: Pulling from jrcs/letsencrypt-nginx-proxy-companion
Digest: sha256:c2eaeb6a04620732d30003fecdf9c3ae81c2b7f838fb8485c6f2c21366bffabd
Status: Image is up to date for jrcs/letsencrypt-nginx-proxy-companion:latest
docker.io/jrcs/letsencrypt-nginx-proxy-companion:latest
Using default tag: latest
latest: Pulling from jwilder/nginx-proxy
Digest: sha256:4116f2b6fb9b2a41d94149e8261c81ebbfd96aa84882d87f19c45e00a7c3c221
Status: Image is up to date for jwilder/nginx-proxy:latest
docker.io/jwilder/nginx-proxy:latest
Pulled jwilder/nginx-proxy and jrcs/letsencrypt-nginx-proxy-companion
d3ecc6eacb03a35e3e49075c957b4fc16f8f42cbb89acecdf00cb331ff20875f

      ------------------------------------------------------------------------------```
Laurent Roger
@lc3t35
as it said, port is already allocated
do you have another ng’ox or apache2 running on your host or another docker ?
(« another nginx »)
Grzegorz Pociejewski
@pociej
@lc3t35 thx for reply but there is no ngix at least not one run by me. Here is what is running there :
➜ stage git:(stage) ✗ mup docker ps
[46.101.130.237] docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
18ca9aafb793 mup-app:latest "/bin/sh -c 'bash $M…" 44 hours ago Up 44 hours 0.0.0.0:80->80/tcp app
1561a2cec1a3 mongo:3.4.1 "/entrypoint.sh mong…" 7 weeks ago Up 11 days 127.0.0.1:27017->27017/tcp mongodb
so indeed there is app running on port 80
but i expected mup to manage things. Should i stop app cntainer then run proxy and redeploy ?
Grzegorz Pociejewski
@pociej
Ok after i stop the app config proxy and them redeploy it seems to be running ( at least no error )
but still i see invalid cert error while im sure certificate is ok, should i go there and place certificate related files somwhere in container ?
Laurent Roger
@lc3t35
what is the error message ?
zodern
@zodern
I released mup-node 0.8 today. This release adds support for production debugging. Run mup node debug, and you can connect your local Node devtools, for example those in Chrome, to your Node app running on the server.
Slind14
@Slind14
Hi @zodern do you know if there is a way to set an environment variable with multiple args? E.g. for nodejs diagnostics this is required:
NODE_OPTIONS: '--report-uncaught-exception --report-on-fatalerror --report-on-signal --report-signal=SIGUSR2 --report-filename=./meteor-app-diagnostic-report.json --report-directory=/tmp'
If done through mup it fails with Error response from daemon: Dockerfile parse error line 13: ARG requires exactly one argument
or adding them to the node start command
Richard Marks
@TheRichardMarks_gitlab
Hello everyone. I have a bit of an issue. I've been hired to update an app that is pretty active and in production. I'm faced with redeploying updates to the app, it was learned that mup was used to deploy the app, however the original deployment mup.js file is no longer available. I have root ssh access to the production server. Is there any way for me to reverse-engineer/dump the mup.js config details on the production server so that I can recreate the deployment to match the current configuration? Or do I have to start over from scratch? There are multiple apps being run through mup on this server, and downtime needs to be at a minimum.