Skip to content

Commit 36ac57f

Browse files
committed
Refactor Dockerfile to enhance openmcp proxy installation with robust extraction handling
1 parent 89e30a5 commit 36ac57f

File tree

1 file changed

+16
-6
lines changed

1 file changed

+16
-6
lines changed

Dockerfile

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,19 +9,29 @@ RUN apt-get update && apt-get install -y curl build-essential && \
99
# Add cargo to PATH
1010
ENV PATH="/root/.cargo/bin:${PATH}"
1111

12-
# Install openmcp proxy - Use architecture detection
12+
# Install openmcp proxy with robust extraction handling
1313
RUN ARCH=$(uname -m) && \
1414
if [ "$ARCH" = "x86_64" ]; then \
1515
curl -LO https://github.com/decentralized-mcp/proxy/releases/latest/download/openmcp-x86_64-unknown-linux-gnu.tgz && \
16-
tar zxvf openmcp-x86_64-unknown-linux-gnu.tgz; \
16+
mkdir -p openmcp_extract && \
17+
tar -xzf openmcp-x86_64-unknown-linux-gnu.tgz -C openmcp_extract && \
18+
find openmcp_extract -name "openmcp" -type f -exec cp {} /usr/local/bin/ \; || \
19+
echo "OpenMCP binary not found, trying alternative path" && \
20+
find openmcp_extract -type f -perm -u+x -exec cp {} /usr/local/bin/openmcp \; && \
21+
chmod +x /usr/local/bin/openmcp && \
22+
rm -rf openmcp_extract openmcp-x86_64-unknown-linux-gnu.tgz; \
1723
elif [ "$ARCH" = "aarch64" ]; then \
1824
curl -LO https://github.com/decentralized-mcp/proxy/releases/latest/download/openmcp-aarch64-unknown-linux-gnu.tgz && \
19-
tar zxvf openmcp-aarch64-unknown-linux-gnu.tgz; \
25+
mkdir -p openmcp_extract && \
26+
tar -xzf openmcp-aarch64-unknown-linux-gnu.tgz -C openmcp_extract && \
27+
find openmcp_extract -name "openmcp" -type f -exec cp {} /usr/local/bin/ \; || \
28+
echo "OpenMCP binary not found, trying alternative path" && \
29+
find openmcp_extract -type f -perm -u+x -exec cp {} /usr/local/bin/openmcp \; && \
30+
chmod +x /usr/local/bin/openmcp && \
31+
rm -rf openmcp_extract openmcp-aarch64-unknown-linux-gnu.tgz; \
2032
else \
2133
echo "Unsupported architecture: $ARCH" && exit 1; \
22-
fi && \
23-
mv openmcp /usr/local/bin/ && \
24-
chmod +x /usr/local/bin/openmcp
34+
fi
2535

2636
# Set working directory
2737
WORKDIR /app

0 commit comments

Comments
 (0)