Skip to content
/ ery Public

🔍 Discover services in local

License

Notifications You must be signed in to change notification settings

srvc/ery

Repository files navigation

ery

Build Status Go Report Card license Go project version

🔍 Discover services in local.

asciicast

Usage

For local processes

You should create a configuration file. you can generate it via ery init command.

# when your current working directory is "~/src/github.com/yourname/awesomeapp",
# a default hostname uses `awesomeapp.yourname.ery`.
ery init

any commands prefixed by ery sets PORT to environment variables at random.

ery rails s

For docker containers

ery reads exposed ports automatically. You have only to set a hostname through label of the container.

# you can access the rails server with "http://yourapp.ery"
$ docker run \
  --rm \
  --label tools.srvc.ery.hostname=yourapp.ery \
  -p 80:12345 \
  yourapp \
  rails s -p 80

Installation

  1. Install ery
    • linux
      • curl -Lo ery https://github.com/srvc/ery/releases/download/v0.0.1/ery_linux_amd64 && chmod +x ery && sudo mv ery /usr/local/bin
        
    • macOS
      • curl -Lo ery https://github.com/srvc/ery/releases/download/v0.0.1/ery_darwin_amd64 && chmod +x ery && sudo mv ery /usr/local/bin
        
    • build yourself
      • go get github.com/srvc/ery/cmd/ery
  2. Configure nameserver
    • linux
      • sudo sh -c 'echo "nameserver 127.0.0.1" >> /etc/resolv.conf'
    • macOS
      • sudo sh -c 'echo "nameserver 127.0.0.1" >> /etc/resolver/ery'
      • if you wanna use other TLDs, you should replace "ery" to others on above command
  3. Add loopback address aliases (macOS only)
    • for i in $(seq 1 255); do /sbin/ifconfig lo0 alias 127.0.0.$i; done
  4. Register as a startup process
    • sudo ery daemon install
    • sudo ery daemon start

Author

License

ery is licensed under the MIT License. See LICENSE