Trying to build vpp
This commit is contained in:
@@ -27,9 +27,9 @@ RUN mkdir -p /out/rootfs/usr/local/bin/
|
||||
COPY packages/kubernetes/kubelet-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubelet
|
||||
COPY packages/kubernetes/kubeadm-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubeadm
|
||||
COPY packages/kubernetes/kubectl-${KUBE_VERSION} /out/rootfs/usr/local/bin/kubectl
|
||||
COPY clitools/out/dpdk/bin/dpdk-testpmd /out/rootfs/usr/local/bin/dpdk-testpmd
|
||||
COPY clitools/out/dpdk/usr/local/lib/*.so* /out/rootfs/usr/local/lib/
|
||||
COPY clitools/out/dpdk/usr/local/lib/dpdk/pmds-23.0/*.so* /out/rootfs/usr/local/lib/dpdk/pmds-23.0/
|
||||
# COPY clitools/out/dpdk/bin/dpdk-testpmd /out/rootfs/usr/local/bin/dpdk-testpmd
|
||||
# COPY clitools/out/dpdk/usr/local/lib/*.so* /out/rootfs/usr/local/lib/
|
||||
# COPY clitools/out/dpdk/usr/local/lib/dpdk/pmds-23.0/*.so* /out/rootfs/usr/local/lib/dpdk/pmds-23.0/
|
||||
COPY alpine/rootfs-extra ./rootfs-extra
|
||||
COPY out/build-info ./rootfs-extra/etc/profile.d/build-info.sh
|
||||
COPY alpine/*.sh /
|
||||
|
||||
@@ -4,41 +4,47 @@ ENV DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
WORKDIR /build
|
||||
|
||||
ARG APT_PROXY
|
||||
|
||||
RUN if [ -n "${APT_PROXY}" ]; then \
|
||||
echo "Acquire::http::Proxy \"http://${APT_PROXY}\";" > /etc/apt/apt.conf.d/01proxy; \
|
||||
fi
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
bash \
|
||||
bc \
|
||||
bison \
|
||||
build-essential \
|
||||
cpio \
|
||||
ca-certificates \
|
||||
ca-certificates \
|
||||
curl \
|
||||
dosfstools \
|
||||
file \
|
||||
fdisk \
|
||||
fdisk \
|
||||
fuse-overlayfs \
|
||||
gdisk \
|
||||
gdisk \
|
||||
e2fsprogs \
|
||||
flex \
|
||||
git \
|
||||
gettext-base \
|
||||
jq \
|
||||
jq \
|
||||
kmod \
|
||||
libelf-dev \
|
||||
libssl-dev \
|
||||
make \
|
||||
pahole \
|
||||
parted \
|
||||
parted \
|
||||
perl \
|
||||
pv \
|
||||
pv \
|
||||
python3 \
|
||||
qemu-user-static \
|
||||
podman \
|
||||
skopeo \
|
||||
qemu-user-static \
|
||||
podman \
|
||||
skopeo \
|
||||
rsync \
|
||||
tar \
|
||||
udev \
|
||||
udev \
|
||||
xz-utils \
|
||||
zstd \
|
||||
zstd \
|
||||
dwarves \
|
||||
gcc-aarch64-linux-gnu \
|
||||
binutils-aarch64-linux-gnu \
|
||||
@@ -47,4 +53,3 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
u-boot-tools \
|
||||
device-tree-compiler \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@ WORKDIR /build/nxplinux
|
||||
|
||||
COPY kernel-extra.config /tmp/kernel-extra.config
|
||||
COPY kernel-build/dts/*.dts ./arch/arm64/boot/dts/freescale/
|
||||
COPY kernel-build/scripts/patch_usdpaa_dts.py /usr/local/bin/patch_usdpaa_dts.py
|
||||
|
||||
RUN grep -q "^dtb-\\\$(CONFIG_ARCH_LAYERSCAPE) += ${DEVICE_TREE_TARGET}.dtb$" \
|
||||
arch/arm64/boot/dts/freescale/Makefile \
|
||||
|
||||
73
docker/vpp.Dockerfile
Normal file
73
docker/vpp.Dockerfile
Normal file
@@ -0,0 +1,73 @@
|
||||
FROM ubuntu:22.04
|
||||
|
||||
ENV DEBIAN_FRONTEND=noninteractive
|
||||
WORKDIR /src
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
ca-certificates \
|
||||
curl \
|
||||
gnupg \
|
||||
lsb-release \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Add FD.io release repo (Jammy / arm64 packages exist for v26.02)
|
||||
RUN set -eux; \
|
||||
mkdir -p /etc/apt/keyrings; \
|
||||
curl -fsSL https://packagecloud.io/fdio/release/gpgkey \
|
||||
| gpg --dearmor -o /etc/apt/keyrings/fdio-release.gpg; \
|
||||
echo "deb [signed-by=/etc/apt/keyrings/fdio-release.gpg] https://packagecloud.io/fdio/release/ubuntu/ jammy main" \
|
||||
> /etc/apt/sources.list.d/fdio-release.list; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
vpp=26.02-release \
|
||||
vpp-plugin-core=26.02-release \
|
||||
vpp-plugin-dpdk=26.02-release; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir -p /etc/vpp /run/vpp
|
||||
|
||||
RUN cat > /etc/vpp/startup.conf <<'EOF'
|
||||
unix {
|
||||
nodaemon
|
||||
cli-listen /run/vpp/cli.sock
|
||||
log /dev/stderr
|
||||
full-coredump
|
||||
}
|
||||
|
||||
api-trace {
|
||||
on
|
||||
}
|
||||
|
||||
cpu {
|
||||
main-core 0
|
||||
}
|
||||
|
||||
plugins {
|
||||
plugin default { disable }
|
||||
plugin dpdk_plugin.so { enable }
|
||||
}
|
||||
|
||||
dpdk {
|
||||
no-pci
|
||||
dev dpaa_bus:fm1-mac9
|
||||
dev dpaa_bus:fm1-mac10
|
||||
}
|
||||
EOF
|
||||
|
||||
RUN cat > /usr/local/bin/docker-entrypoint.sh <<'EOF'
|
||||
#!/bin/sh
|
||||
set -eu
|
||||
|
||||
mkdir -p /run/vpp
|
||||
|
||||
echo "=== device check ==="
|
||||
ls -l /dev/fsl-usdpaa /dev/fsl-usdpaa-irq 2>/dev/null || true
|
||||
echo "=== sysfs check ==="
|
||||
ls -l /sys/class/net 2>/dev/null || true
|
||||
|
||||
exec /usr/bin/vpp -c /etc/vpp/startup.conf "$@"
|
||||
EOF
|
||||
|
||||
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
|
||||
|
||||
ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
|
||||
Reference in New Issue
Block a user