proxy.installer 964 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #!/bin/sh
  2. # LIBNETWORK_COMMIT is used to build the docker-userland-proxy binary. When
  3. # updating the binary version, consider updating github.com/docker/libnetwork
  4. # in vendor.conf accordingly
  5. : "${LIBNETWORK_COMMIT:=feeff4f0a3fd2a2bb19cf67c826082c66ffaaed9}"
  6. install_proxy() {
  7. case "$1" in
  8. "dynamic")
  9. install_proxy_dynamic
  10. return
  11. ;;
  12. "")
  13. export CGO_ENABLED=0
  14. _install_proxy
  15. ;;
  16. *)
  17. echo 'Usage: $0 [dynamic]'
  18. ;;
  19. esac
  20. }
  21. install_proxy_dynamic() {
  22. export PROXY_LDFLAGS="-linkmode=external" install_proxy
  23. export BUILD_MODE="-buildmode=pie"
  24. _install_proxy
  25. }
  26. _install_proxy() {
  27. echo "Install docker-proxy version $LIBNETWORK_COMMIT"
  28. git clone https://github.com/docker/libnetwork.git "$GOPATH/src/github.com/docker/libnetwork"
  29. cd "$GOPATH/src/github.com/docker/libnetwork"
  30. git checkout -q "$LIBNETWORK_COMMIT"
  31. go build ${BUILD_MODE} -ldflags="$PROXY_LDFLAGS" -o ${PREFIX}/docker-proxy github.com/docker/libnetwork/cmd/proxy
  32. }