commit
bbcd91b59a
@ -5,9 +5,10 @@ USER root
|
|||||||
|
|
||||||
ARG DEPS_WOLFSSL="build-essential autoconf libtool clang clang-tools zlib1g-dev libuv1-dev libpam0g-dev valgrind git linux-headers-generic gcc-multilib g++-multilib libpcap-dev bubblewrap gdb iputils-ping lldb bsdmainutils netcat binutils-arm-linux-gnueabi binutils-aarch64-linux-gnu"
|
ARG DEPS_WOLFSSL="build-essential autoconf libtool clang clang-tools zlib1g-dev libuv1-dev libpam0g-dev valgrind git linux-headers-generic gcc-multilib g++-multilib libpcap-dev bubblewrap gdb iputils-ping lldb bsdmainutils netcat binutils-arm-linux-gnueabi binutils-aarch64-linux-gnu"
|
||||||
ARG DEPS_LIBOQS="astyle cmake gcc ninja-build libssl-dev python3-pytest python3-pytest-xdist unzip xsltproc doxygen graphviz python3-yaml valgrind git"
|
ARG DEPS_LIBOQS="astyle cmake gcc ninja-build libssl-dev python3-pytest python3-pytest-xdist unzip xsltproc doxygen graphviz python3-yaml valgrind git"
|
||||||
|
ARG DEPS_UDP_PROXY="wget libevent-dev"
|
||||||
ARG DEPS_TESTS="abi-dumper libcurl4-openssl-dev tcpdump"
|
ARG DEPS_TESTS="abi-dumper libcurl4-openssl-dev tcpdump"
|
||||||
RUN DEBIAN_FRONTEND=noninteractive apt update && apt install -y apt-utils \
|
RUN DEBIAN_FRONTEND=noninteractive apt update && apt install -y apt-utils \
|
||||||
&& apt install -y ${DEPS_WOLFSSL} ${DEPS_LIBOQS} ${DEPS_TESTS} \
|
&& apt install -y ${DEPS_WOLFSSL} ${DEPS_LIBOQS} ${DEPS_UDP_PROXY} ${DEPS_TESTS} \
|
||||||
&& apt clean -y && rm -rf /var/lib/apt/lists/*
|
&& apt clean -y && rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
ARG USER=docker
|
ARG USER=docker
|
||||||
@ -25,7 +26,16 @@ RUN mkdir /opt/sources
|
|||||||
RUN cd /opt/sources && git clone --single-branch https://github.com/cisco/hash-sigs.git && cd hash-sigs && git checkout b0631b8891295bf2929e68761205337b7c031726 \
|
RUN cd /opt/sources && git clone --single-branch https://github.com/cisco/hash-sigs.git && cd hash-sigs && git checkout b0631b8891295bf2929e68761205337b7c031726 \
|
||||||
&& sed -i 's/USE_OPENSSL 1/USE_OPENSSL 0/g' sha256.h && make -j4 hss_lib_thread.a
|
&& sed -i 's/USE_OPENSSL 1/USE_OPENSSL 0/g' sha256.h && make -j4 hss_lib_thread.a
|
||||||
|
|
||||||
|
# Install pkixssh to /opt/pkixssh for X509 interop testing with wolfSSH
|
||||||
|
RUN mkdir /var/empty
|
||||||
|
RUN cd /opt/sources && wget -q -O- https://roumenpetrov.info/secsh/src/pkixssh-14.1.1.tar.gz | tar xzf - && cd pkixssh-14.1.1 && ./configure --prefix=/opt/pkixssh/ --exec-prefix=/opt/pkixssh/ && make install
|
||||||
|
|
||||||
|
# Install udp/tcp-proxy
|
||||||
|
RUN cd /opt/sources && git clone --depth=1 --single-branch --branch=main http://github.com/wolfssl/udp-proxy && cd udp-proxy && make && cp tcp_proxy udp_proxy /bin/.
|
||||||
|
|
||||||
# Allow non-root to use tcpdump (will need NET_RAW and NET_ADMIN capability when running the container)
|
# Allow non-root to use tcpdump (will need NET_RAW and NET_ADMIN capability when running the container)
|
||||||
RUN setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/tcpdump
|
RUN setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/tcpdump
|
||||||
|
# Allow non-root to use gdb on processes (will need SYS_PTRACE capability when running the container)
|
||||||
|
RUN setcap 'CAP_SYS_PTRACE+eip' /usr/bin/gdb
|
||||||
|
|
||||||
USER ${UID}:${GID}
|
USER ${UID}:${GID}
|
@ -1,7 +1,7 @@
|
|||||||
# Overview
|
# Overview
|
||||||
This is a simple Docker environment for compiling and running WolfSSL. Use `run.sh` to build everything (Docker container, WolfSSL, etc.). This script takes in arguments that can be passed to `./configure`. For example: `run.sh --enable-all`
|
This is a Docker environment for compiling, testing and running WolfSSL. Use `run.sh` to build everything (Docker container, WolfSSL, etc.). This script takes in arguments that can be passed to `./configure`. For example: `run.sh --enable-all`
|
||||||
|
|
||||||
When the compilation and tests succeed, you will be dropped in to a shell environment within the container. This can be useful to build other things within the environment.
|
When the compilation and tests succeed, you will be dropped in to a shell environment within the container. This can be useful to build other things within the environment. Additional tests can be run as well as debugging of code.
|
||||||
|
|
||||||
# FAQ
|
# FAQ
|
||||||
## permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
|
## permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock
|
||||||
|
Loading…
x
Reference in New Issue
Block a user