mirror of
https://github.com/lwthiker/curl-impersonate.git
synced 2025-08-08 12:49:36 +00:00
Merge pull request #220 from lwthiker/fix-docker-without-wss
Fix Docker build missing websocket support
This commit is contained in:
@@ -181,7 +181,8 @@ RUN mkdir out && \
|
|||||||
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
||||||
./out/curl-impersonate -V | grep -q brotli && \
|
./out/curl-impersonate -V | grep -q brotli && \
|
||||||
./out/curl-impersonate -V | grep -q nghttp2 && \
|
./out/curl-impersonate -V | grep -q nghttp2 && \
|
||||||
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL
|
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL && \
|
||||||
|
./out/curl-impersonate -V | grep -q -e wss
|
||||||
|
|
||||||
# Verify that the resulting 'curl' is really statically compiled
|
# Verify that the resulting 'curl' is really statically compiled
|
||||||
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
||||||
@@ -191,6 +192,7 @@ RUN rm -Rf /build/install
|
|||||||
# Re-compile libcurl dynamically
|
# Re-compile libcurl dynamically
|
||||||
RUN cd ${CURL_VERSION} && \
|
RUN cd ${CURL_VERSION} && \
|
||||||
./configure --prefix=/build/install \
|
./configure --prefix=/build/install \
|
||||||
|
--enable-websockets \
|
||||||
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
||||||
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
||||||
{{#firefox}}
|
{{#firefox}}
|
||||||
@@ -262,7 +264,8 @@ RUN apt-get update && apt-get install -y ca-certificates \
|
|||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
{{/debian}}
|
{{/debian}}
|
||||||
# Copy curl-impersonate from the builder image
|
# Copy curl-impersonate from the builder image
|
||||||
COPY --from=builder /build/install /usr/local
|
COPY --from=builder /build/out/curl-impersonate* /usr/local/bin
|
||||||
|
COPY --from=builder /build/out/libcurl-impersonate* /usr/local/lib
|
||||||
{{#debian}}
|
{{#debian}}
|
||||||
# Update the loader's cache
|
# Update the loader's cache
|
||||||
RUN ldconfig
|
RUN ldconfig
|
||||||
|
@@ -109,7 +109,8 @@ RUN mkdir out && \
|
|||||||
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
||||||
./out/curl-impersonate -V | grep -q brotli && \
|
./out/curl-impersonate -V | grep -q brotli && \
|
||||||
./out/curl-impersonate -V | grep -q nghttp2 && \
|
./out/curl-impersonate -V | grep -q nghttp2 && \
|
||||||
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL
|
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL && \
|
||||||
|
./out/curl-impersonate -V | grep -q -e wss
|
||||||
|
|
||||||
# Verify that the resulting 'curl' is really statically compiled
|
# Verify that the resulting 'curl' is really statically compiled
|
||||||
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
||||||
@@ -119,6 +120,7 @@ RUN rm -Rf /build/install
|
|||||||
# Re-compile libcurl dynamically
|
# Re-compile libcurl dynamically
|
||||||
RUN cd ${CURL_VERSION} && \
|
RUN cd ${CURL_VERSION} && \
|
||||||
./configure --prefix=/build/install \
|
./configure --prefix=/build/install \
|
||||||
|
--enable-websockets \
|
||||||
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
||||||
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
||||||
--with-openssl=/build/boringssl/build \
|
--with-openssl=/build/boringssl/build \
|
||||||
@@ -150,7 +152,8 @@ FROM debian:bookworm-slim
|
|||||||
RUN apt-get update && apt-get install -y ca-certificates \
|
RUN apt-get update && apt-get install -y ca-certificates \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
# Copy curl-impersonate from the builder image
|
# Copy curl-impersonate from the builder image
|
||||||
COPY --from=builder /build/install /usr/local
|
COPY --from=builder /build/out/curl-impersonate* /usr/local/bin
|
||||||
|
COPY --from=builder /build/out/libcurl-impersonate* /usr/local/lib
|
||||||
# Update the loader's cache
|
# Update the loader's cache
|
||||||
RUN ldconfig
|
RUN ldconfig
|
||||||
# Copy to /build/out as well for backward compatibility with previous versions.
|
# Copy to /build/out as well for backward compatibility with previous versions.
|
||||||
|
@@ -102,7 +102,8 @@ RUN mkdir out && \
|
|||||||
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
||||||
./out/curl-impersonate -V | grep -q brotli && \
|
./out/curl-impersonate -V | grep -q brotli && \
|
||||||
./out/curl-impersonate -V | grep -q nghttp2 && \
|
./out/curl-impersonate -V | grep -q nghttp2 && \
|
||||||
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL
|
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL && \
|
||||||
|
./out/curl-impersonate -V | grep -q -e wss
|
||||||
|
|
||||||
# Verify that the resulting 'curl' is really statically compiled
|
# Verify that the resulting 'curl' is really statically compiled
|
||||||
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
||||||
@@ -112,6 +113,7 @@ RUN rm -Rf /build/install
|
|||||||
# Re-compile libcurl dynamically
|
# Re-compile libcurl dynamically
|
||||||
RUN cd ${CURL_VERSION} && \
|
RUN cd ${CURL_VERSION} && \
|
||||||
./configure --prefix=/build/install \
|
./configure --prefix=/build/install \
|
||||||
|
--enable-websockets \
|
||||||
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
||||||
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
||||||
--with-openssl=/build/boringssl/build \
|
--with-openssl=/build/boringssl/build \
|
||||||
@@ -143,6 +145,7 @@ RUN chmod +x out/curl_*
|
|||||||
# only.
|
# only.
|
||||||
FROM alpine:3.18
|
FROM alpine:3.18
|
||||||
# Copy curl-impersonate from the builder image
|
# Copy curl-impersonate from the builder image
|
||||||
COPY --from=builder /build/install /usr/local
|
COPY --from=builder /build/out/curl-impersonate* /usr/local/bin
|
||||||
|
COPY --from=builder /build/out/libcurl-impersonate* /usr/local/lib
|
||||||
# Wrapper scripts
|
# Wrapper scripts
|
||||||
COPY --from=builder /build/out/curl_* /usr/local/bin/
|
COPY --from=builder /build/out/curl_* /usr/local/bin/
|
||||||
|
@@ -103,7 +103,8 @@ RUN mkdir out && \
|
|||||||
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
||||||
./out/curl-impersonate -V | grep -q brotli && \
|
./out/curl-impersonate -V | grep -q brotli && \
|
||||||
./out/curl-impersonate -V | grep -q nghttp2 && \
|
./out/curl-impersonate -V | grep -q nghttp2 && \
|
||||||
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL
|
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL && \
|
||||||
|
./out/curl-impersonate -V | grep -q -e wss
|
||||||
|
|
||||||
# Verify that the resulting 'curl' is really statically compiled
|
# Verify that the resulting 'curl' is really statically compiled
|
||||||
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
||||||
@@ -113,6 +114,7 @@ RUN rm -Rf /build/install
|
|||||||
# Re-compile libcurl dynamically
|
# Re-compile libcurl dynamically
|
||||||
RUN cd ${CURL_VERSION} && \
|
RUN cd ${CURL_VERSION} && \
|
||||||
./configure --prefix=/build/install \
|
./configure --prefix=/build/install \
|
||||||
|
--enable-websockets \
|
||||||
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
||||||
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
||||||
--with-nss=/build/${NSS_VERSION}/dist/Release \
|
--with-nss=/build/${NSS_VERSION}/dist/Release \
|
||||||
@@ -148,7 +150,8 @@ RUN apt-get update && apt-get install -y ca-certificates \
|
|||||||
libnss3 nss-plugin-pem \
|
libnss3 nss-plugin-pem \
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
# Copy curl-impersonate from the builder image
|
# Copy curl-impersonate from the builder image
|
||||||
COPY --from=builder /build/install /usr/local
|
COPY --from=builder /build/out/curl-impersonate* /usr/local/bin
|
||||||
|
COPY --from=builder /build/out/libcurl-impersonate* /usr/local/lib
|
||||||
# Update the loader's cache
|
# Update the loader's cache
|
||||||
RUN ldconfig
|
RUN ldconfig
|
||||||
# Copy to /build/out as well for backward compatibility with previous versions.
|
# Copy to /build/out as well for backward compatibility with previous versions.
|
||||||
|
@@ -92,7 +92,8 @@ RUN mkdir out && \
|
|||||||
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
RUN ./out/curl-impersonate -V | grep -q zlib && \
|
||||||
./out/curl-impersonate -V | grep -q brotli && \
|
./out/curl-impersonate -V | grep -q brotli && \
|
||||||
./out/curl-impersonate -V | grep -q nghttp2 && \
|
./out/curl-impersonate -V | grep -q nghttp2 && \
|
||||||
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL
|
./out/curl-impersonate -V | grep -q -e NSS -e BoringSSL && \
|
||||||
|
./out/curl-impersonate -V | grep -q -e wss
|
||||||
|
|
||||||
# Verify that the resulting 'curl' is really statically compiled
|
# Verify that the resulting 'curl' is really statically compiled
|
||||||
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
RUN ! (ldd ./out/curl-impersonate | grep -q -e libcurl -e nghttp2 -e brotli -e ssl -e crypto)
|
||||||
@@ -102,6 +103,7 @@ RUN rm -Rf /build/install
|
|||||||
# Re-compile libcurl dynamically
|
# Re-compile libcurl dynamically
|
||||||
RUN cd ${CURL_VERSION} && \
|
RUN cd ${CURL_VERSION} && \
|
||||||
./configure --prefix=/build/install \
|
./configure --prefix=/build/install \
|
||||||
|
--enable-websockets \
|
||||||
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
--with-nghttp2=/build/${NGHTTP2_VERSION}/installed \
|
||||||
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
--with-brotli=/build/brotli-${BROTLI_VERSION}/build/installed \
|
||||||
--with-nss=/build/${NSS_VERSION}/dist/Release \
|
--with-nss=/build/${NSS_VERSION}/dist/Release \
|
||||||
@@ -137,6 +139,7 @@ FROM alpine:3.18
|
|||||||
# which is supplied by 'nss' on alpine.
|
# which is supplied by 'nss' on alpine.
|
||||||
RUN apk add --no-cache nss
|
RUN apk add --no-cache nss
|
||||||
# Copy curl-impersonate from the builder image
|
# Copy curl-impersonate from the builder image
|
||||||
COPY --from=builder /build/install /usr/local
|
COPY --from=builder /build/out/curl-impersonate* /usr/local/bin
|
||||||
|
COPY --from=builder /build/out/libcurl-impersonate* /usr/local/lib
|
||||||
# Wrapper scripts
|
# Wrapper scripts
|
||||||
COPY --from=builder /build/out/curl_* /usr/local/bin/
|
COPY --from=builder /build/out/curl_* /usr/local/bin/
|
||||||
|
Reference in New Issue
Block a user