Code Monkey home page Code Monkey logo

biomaj-proxy's Introduction

Running

Public proxy

For public communication, must be accessible to users

sudo docker run -p 6000:80 -d --name biomaj-public-proxy -e --link biomaj-consul:biomaj-consul -v PATH_TO/nginx-public.ctmpl:/nginx.ctmpl:ro biomaj-proxy

Private proxy

For internal communication, must be accessible to services only

sudo docker run -p 5000:80 -d --name biomaj-proxy -e --link biomaj-consul:biomaj-consul -v PATH_TO/nginx.ctmpl:/nginx.ctmpl:ro biomaj-proxy

Consul template

To test generation, once, of the template (you need consul-template)

./consul-template -consul 127.0.0.1:8500 -template nginx.ctmpl:/tmp/nginx.conf -once
cat /tmp/nginx.conf

Consul

you need a consul instance (or a cluster)

sudo docker run --name biomaj-consul --rm -p 8400:8400 -p 8500:8500 -p 8600:53/udp -h node1 progrium/consul -server -bootstrap -advertise IP_OF_NODE -ui-dir /ui

and biomaj services need to declare consul host in their config.yml

To test if registration if fine, connect to consul ui or test with dig

$ dig @IP_Of_CONSUL_NODE -p 8600 biomaj_download.service.dc1.consul. SRV

Example output:

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @131.254.17.40 -p 8600 biomaj_download.service.dc1.consul. SRV
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 28589
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 2

;; QUESTION SECTION:
;biomaj_download.service.dc1.consul. IN	SRV

;; ANSWER SECTION:
biomaj_download.service.dc1.consul. 0 IN SRV	1 1 5013 node1.node.dc1.consul.
biomaj_download.service.dc1.consul. 0 IN SRV	1 1 5003 node1.node.dc1.consul.

;; ADDITIONAL SECTION:
node1.node.dc1.consul.	0	IN	A	131.254.17.40
node1.node.dc1.consul.	0	IN	A	131.254.17.40

;; Query time: 0 msec
;; SERVER: 131.254.17.40#8600(131.254.17.40)
;; WHEN: Mon Oct 03 15:10:21 CEST 2016
;; MSG SIZE  rcvd: 276

biomaj-proxy's People

Contributors

osallou avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.