How to implement HTTPS when deploying Meteor with Docker?


#1

I am in the process of deploying my Meteor app via Docker, so far I’ve basically got the app running (as a Node server) in a Docker container. As my next step, I want to enable HTTPS for it.

So I guess what I would like to know is:

  1. What’s the most priceworthy/trustworthy alternative for buying an SSL certificate?
  2. How do I implement HTTPS for my app given a certificate, should I f.ex. use Nginx for this purpose?

#2
  1. You need to buy a certificate. You can use a self sign certificate if you need. Check https://letsencrypt.org/ as well.

  2. Yes. Use nginx. But as a different container and link your meteor container into that. This is what we used for the next version of Meteor Up: https://github.com/meteorhacks/mup-frontend-server


#3

Thanks @arunoda, I appreciate your help. Could you recommend a cheap (re-)seller of certificates though?


#4

With NameCheep you can buy it for ~10$/year.
Or you can use Cloudflare FREE SSL.


#5

Thanks again @arunoda!


#6

@arunoda: HTTPS is working for my site now, great! However, how do I redirect HTTP requests to HTTPS? And, how do I redirect www.muzhack.com to muzhack.com?


#7

You need to install force-ssl for ssl.
Can do something similar for www directs too.


#8

@arunoda I solved the HTTPS/www stuff with Nginx. I forked mup-frontend-server and tweaked it :smile:


#9

I cannot understand why StartSSL is so little known. I have been using their free certs for years with zero problems.