chainpoint / chainpoint-gateway

Chainpoint Gateway
https://chainpoint.org
Apache License 2.0
27 stars 12 forks source link

How to apply a certificate if port 80 is used by chainpoint gateway ? #52

Open jo2h2 opened 3 years ago

jo2h2 commented 3 years ago

@jacohend - you stated when "the gateway initialized properly. If it did, it will be accessible on port 80 instead of 8080."

Originally posted by @jacohend in https://github.com/chainpoint/chainpoint-gateway/issues/51#issuecomment-778215253

As both Chrome but CURL as well are complaining that the certificate is invalid I thought to install nginx and let's enrypt and put the valid certificates into the right placces.

Is this the recommended approach ? But if port 80 is used by chainpoint gateway - would it be the right approach to shut down chainpoint gateway, start up nginx, do the certificate update, stop nginx and restart chainpoint gateway ... ? Or what would be the proper way ?

Thanks a lot !

Best wishes, Jo ...

jacohend commented 3 years ago

You could use a forward proxy such as Traefik. It'll also handle Let's Encrypt.

jo2h2 commented 3 years ago

Hi Jacob,

thanks for your hint - and I started with traefik following this https://www.digitalocean.com/community/tutorials/how-to-use-traefik-v2-as-a-reverse-proxy-for-docker-containers-on-ubuntu-20-04 tutorial.

In Step 2 https://www.digitalocean.com/community/tutorials/how-to-use-traefik-v2-as-a-reverse-proxy-for-docker-containers-on-ubuntu-20-04#step-2-%E2%80%93-running-the-traefik-container, using parameter -p 80:80 fails (of course) as the chainpoint gateway is using this port - so I started the traefik docker without this parameter. But https://monitor.your_domain/dashboard/ is showing up and Let's Encrypt is working as well ...

Do I need change something in the existing chainpoint docker configuration related to the port 80 ?

But I am lost with https://www.digitalocean.com/community/tutorials/how-to-use-traefik-v2-as-a-reverse-proxy-for-docker-containers-on-ubuntu-20-04#step-3-%E2%80%94-registering-containers-with-traefik

Do I need to create a new separate traefik docker-compose.yml file as explained in above step 3 link ? Or should I tweak one of the existing ~/chainpoint-gateway$ docker-compose.yaml or swarm-compose.yaml ? and add e.g. labels:

And what about the "network = web" ? do I need to use this network web ... [providers.docker] watch = true network = "web"

or should I tweak one of the below ??

NETWORK ID NAME DRIVER SCOPE ** bridge bridge local ** chainpoint-gateway_chainpoint-gateway overlay swarm ** docker_gwbridge cbridge local ** host host local ** ingress overlay swarm ** none null local ** web bridge local

Sorry for all the questions :-) - and thanks for any hint you can give !

Best wishes, Jo ...

jo2h2 commented 3 years ago

Any hint for me ? :-)

Thanks a lot !