f0b405fbda
Now `docker run -p` ports can be exposed to the host namespace automatically when `dockerd-rootless.sh` is launched with
`--userland-proxy --userland-proxy-path $(which rootlesskit-docker-proxy)`.
This is akin to how Docker for Mac/Win works with `--userland-proxy-path=/path/to/vpnkit-expose-port`.
The port number on the host namespace needs to be set to >= 1024.
SCTP ports are currently unsupported.
RootlessKit changes: 7bbbc48a6f...ed26714429
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
35 lines
1.1 KiB
Bash
35 lines
1.1 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
set -e
|
|
rm -rf "$DEST"
|
|
|
|
install_binary() {
|
|
local file="$1"
|
|
local target="${DOCKER_MAKE_INSTALL_PREFIX:=/usr/local}/bin/"
|
|
if [ "$(go env GOOS)" == "linux" ]; then
|
|
echo "Installing $(basename $file) to ${target}"
|
|
mkdir -p "$target"
|
|
cp -f -L "$file" "$target"
|
|
else
|
|
echo "Install is only supported on linux"
|
|
return 1
|
|
fi
|
|
}
|
|
|
|
(
|
|
DEST="$(dirname $DEST)/binary-daemon"
|
|
source "${MAKEDIR}/.binary-setup"
|
|
install_binary "${DEST}/${DOCKER_DAEMON_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_RUNC_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_CONTAINERD_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_CONTAINERD_CTR_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_CONTAINERD_SHIM_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_PROXY_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_INIT_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_ROOTLESSKIT_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_ROOTLESSKIT_DOCKER_PROXY_BINARY_NAME}"
|
|
install_binary "${DEST}/${DOCKER_DAEMON_ROOTLESS_SH_BINARY_NAME}"
|
|
if [ -f "${DEST}/${DOCKER_VPNKIT_BINARY_NAME}" ]; then
|
|
install_binary "${DEST}/${DOCKER_VPNKIT_BINARY_NAME}"
|
|
fi
|
|
)
|