-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathDockerfile
48 lines (42 loc) · 1.39 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
ARG ARCH=armv7hf
ARG REPO=axisecp
ARG SDK=acap-native-sdk
ARG UBUNTU_VERSION=24.04
ARG VERSION=12.2.0
FROM ${REPO}/${SDK}:${VERSION}-${ARCH}-ubuntu${UBUNTU_VERSION}
# Build Monkey server and library
WORKDIR /opt
COPY monkey.patch .
RUN git clone -b v1.5.6 https://github.com/monkey/monkey
WORKDIR /opt/monkey
RUN git apply --ignore-space-change --ignore-whitespace ../monkey.patch &&\
. /opt/axis/acapsdk/environment-setup* &&\
./configure \
--enable-shared \
--malloc-libc \
--prefix=/usr/local \
--bindir=/usr/local/bin \
--libdir=/usr/local/lib \
--sysconfdir=/usr/local/packages/list/html \
--datadir=/usr/local/packages/list/html \
--mandir=/usr/local/man \
--logdir=/tmp \
--plugdir=/usr/local/packages/list/lib \
--pidfile=/tmp/monkey.pid \
--incdir=/usr/local/include/monkey \
--systemddir=/usr/lib/systemd/system &&\
make &&\
make install
WORKDIR /opt/monkey/examples
COPY ./app .
RUN cp /usr/local/bin/monkey .
# Build examples
RUN . /opt/axis/acapsdk/environment-setup* &&\
mkdir -p "$SDKTARGETSYSROOT"/usr/local &&\
cp -r /usr/local "$SDKTARGETSYSROOT"/usr &&\
mkdir -p lib &&\
cp /usr/local/lib/libmonkey.so.1.5 /usr/local/packages/list/lib/*.so -t lib/ &&\
cp -r /usr/local/packages/list/html . &&\
acap-build .
ENV PATH="${PATH}:/opt/axis/acapsdk/sysroots/x86_64-pokysdk-linux/usr/bin"
ENTRYPOINT [ "/bin/bash" ]