Run IB API headless

Discussion in 'Programming' started by bln, Nov 14, 2016.

  1. bln


  2. You have to pay for docker though, don't you?
  3. bln


    No, the application-container engine and developer tools is all free software/open source. Commercial support contracts or hosting of proprietary container images on one has to pay. But that is mostly for businesses and corporations.
  4. Interesting. I had heard of Docker but mostly use VM products like VirtualBox.
    I welcome shiny, new things to distract me. :D
  5. Tim Smith

    Tim Smith


    I'm not sure why you call it a "solution" ?

    An API. By definition. Is headless.

    What programming language you use to talk to the API is up to the developer.

    Comparing API to TWS is irrelevant ! TWS is an example of implementation of access to API.
  6. Do you use the IB API at all? To use the API requires a middleware program, either TWS or IB Gateway, to be running. Both programs require a display to run.
    IBController takes care of part of this, but the Docker solution allows you to create a container that can be easily run and recreated, containing everything needed.
    The alternative is to install IBController directly on your PC. But if your install or the PC itself gets borked up it's harder to recover from. Docker prevents these problems.
  7. bln


    Duh, what are you talking about. TWS/IBGateway provides IB's programming API. TWS/IBGateway requires a graphical display to run. IBController packages the Java jar files from TWS/IBGateway so they can run without the need of a graphical display. It's a solution to a known problem that many system developer using IB have.
  8. Couple of questions:

    1) How does it address second level authentication (besides username/password there is a prompt for an additional password to be entered).

    2) Is this a headless solution for IB Gateway, or a solution which is headless that launches IB Gateway inside it? (In other words, did you modify IB Gateway to not show a UI, or is the UI being launched within the VM, but the VM itself is not being shown).

    (Based on my quick look at GitHub it looks like the second, but want to make sure I'm not missing anything).

    Thank you, and thank you for sharing :)
  9. I kinda wondered that myself. I use the 2-factor authentication but it's unclear how that works with IBController.
  10. Zzzz1


    Disagree, this docker solution only adds another potential failure point. The IB API requires a gateway, period. Whether the gateway is hosted on your Pc, inside a layer or on another machine is irrelevant, other than the complexity level and number of potential failure points. The only way around the gateway is a Fix connection directly to IB's server.

    #10     Nov 14, 2016