Find Help at the Command Line#
Running IO with --help
displays basic help information.
$ io --help
IO is your friendly neighborhood network proxy.
Learn more at http://agent.io
Usage:
io [flags]
Flags:
--base-id int set the Envoy base ID
-c, --config strings load config file (can be used multiple times)
-x, --exit exit after importing config files
-h, --help help for io
-i, --interactive run with a local interactive console
-v, --version print version and exit
IO’s command-line options are mostly intuitive, but one calls for special explanation.
All Your Base IDs#
Normally it’s only possible to run one IO and Envoy at a time on a given system. There are ports and sockets that IO uses, Envoy uses shared memory regions, and all of these can have conflicts when we run a second IO/Envoy combination. To work around this, Envoy has the --base-id
flag, which it uses to claim a unique shared memory region. IO extends this and uses it to offset certain ports. Because of the way that IO uses the base ID, IO’s base ID is limited to 0-99.
Warning: base ID offsets are not yet being applied to IO’s SSH port, so currently multiple IOs can only be run in interactive mode (this will be fixed soon).