FROM ubuntu:22.04 LABEL version="Velociraptor v0.7.0" LABEL description="Velociraptor server in a Docker container" LABEL maintainer="Wes Lambert, @therealwlambert" COPY ./entrypoint . RUN chmod +x entrypoint && \ apt-get update && \ apt-get install -y curl wget jq rsync && \ # Create dirs for Velo binaries mkdir -p /opt/velociraptor && \ for i in linux mac windows; do mkdir -p /opt/velociraptor/$i; done && \ # Get Velox binaries WINDOWS_EXE=$(curl -s https://api.github.com/repos/velocidex/velociraptor/releases/latest | jq -r 'limit(6 ; ( .assets[].browser_download_url | select ( contains("windows-amd64.exe") )))' | grep -vE '.sig' | tail -1) && \ WINDOWS_MSI=$(curl -s https://api.github.com/repos/velocidex/velociraptor/releases/latest | jq -r 'limit(6 ; ( .assets[].browser_download_url | select ( contains("windows-amd64.msi") )))' | grep -vE '.sig' | tail -1) && \ LINUX_BIN=$(curl -s https://api.github.com/repos/velocidex/velociraptor/releases/latest | jq -r 'limit(6 ; ( .assets[].browser_download_url | select ( contains("linux-amd64") )))' | grep -vE "musl|sig" | sort | tail -1) && \ MAC_BIN=$(curl -s https://api.github.com/repos/velocidex/velociraptor/releases/latest | jq -r 'limit(1 ; ( .assets[].browser_download_url | select ( contains("darwin-amd64") )))' | grep -vE '.sig' | tail -1) && \ wget -O /opt/velociraptor/linux/velociraptor "$LINUX_BIN" && \ wget -O /opt/velociraptor/mac/velociraptor_client "$MAC_BIN" && \ wget -O /opt/velociraptor/windows/velociraptor_client.exe "$WINDOWS_EXE" && \ wget -O /opt/velociraptor/windows/velociraptor_client.msi "$WINDOWS_MSI" && \ # Clean up apt-get remove -y --purge wget && \ apt-get clean WORKDIR /velociraptor CMD ["/entrypoint"]