[dpdk-dev] [PATCH v2] build: add dockerfile for building docker image

Yasufumi Ogawa yasufum.o at gmail.com
Wed Nov 13 21:26:43 CET 2019


On 2019/10/15 1:39, Ray Kinsella wrote:
> 
> 
> On 04/10/2019 11:08, Abdul Halim wrote:
>> Adding a Dockerfile with Ubuntu bionic base image to build dpdk as shared
>> library. This docker image could be used as base image to build and run
>> dpdk applications in containers.
Hi Abdul,

I have tested your Dockerfile and confirmed that shared lib is generated 
under /usr/local as described in the Dockerfile.

Just a comment, I wonder if you add an example of usecase in 
documentation for helping users understanding how to use.

Regards,
Yasufumi

>>
>> Signed-off-by: Abdul Halim <abdul.halim at intel.com>
>>
>> ---
>>
>> v2:
>>    * renamed Dockerfile name from Dockerfile.ubuntu to Dockerfile.bionic
>>    * added call to ldconfig to update cache of libraries to include newly
>>      installed DPDK libs
>> ---
>>   extras/Dockerfile.bionic | 40 ++++++++++++++++++++++++++++++++++++++++
>>   extras/README.md         |  8 ++++++++
>>   2 files changed, 48 insertions(+)
>>   create mode 100644 extras/Dockerfile.bionic
>>   create mode 100644 extras/README.md
>>
>> diff --git a/extras/Dockerfile.bionic b/extras/Dockerfile.bionic
>> new file mode 100644
>> index 0000000..f83b720
>> --- /dev/null
>> +++ b/extras/Dockerfile.bionic
>> @@ -0,0 +1,40 @@
>> +# SPDX-License-Identifier: BSD-3-Clause
>> +# Copyright(c) 2019 Intel Corporation
>> +FROM ubuntu:bionic
>> +
>> +# install requirements for getting and building DPDK
>> +# including dependencies for DPDK features
>> +RUN apt-get update && apt-get install -y \
>> +    build-essential \
>> +    pkg-config \
>> +    python3 \
>> +    python3-pip \
>> +    ninja-build \
>> +    libjansson-dev \
>> +    libbsd-dev \
>> +    libnuma-dev \
>> +    libssl-dev \
>> +    zlib1g-dev \
>> +    libpcap-dev \
>> +    libibverbs-dev \
>> +        && pip3 install meson \
>> +        && apt-get clean && rm -rf /var/lib/apt/lists/*
>> +
>> +ADD . /tmp/dpdk
>> +
>> +WORKDIR /tmp/dpdk
>> +
>> +RUN meson build \
>> +    -Ddefault_library=shared \
>> +    -Dmachine=default \
>> +    -Dper_library_versions=false \
>> +        && ninja -C build install \
>> +        && ldconfig \
>> +        && cd /; rm -rf /tmp/dpdk
>> +
>> +WORKDIR /
>> +
>> +# Installed DPDK Shared library location:
>> +# lib dir : /usr/local/lib/
>> +# include : /usr/local/include/
>> +# pkgconfig file: /usr/local/lib/x86_64-linux-gnu/pkgconfig/libdpdk.pc
>> diff --git a/extras/README.md b/extras/README.md
>> new file mode 100644
>> index 0000000..f1aa898
>> --- /dev/null
>> +++ b/extras/README.md
>> @@ -0,0 +1,8 @@
>> +# Build DPDK Docker image
>> +
>> +To build a docker image run the following command from dpdk root directory.
>> +
>> +```
>> +DOCKER_TAG="dpdk"
>> +docker build -t ${DOCKER_TAG} -f extras/Dockerfile.bionic .
>> +```
>>
> Acked-by: Ray Kinsella <mdr at ashroe.eu>
> 
Tested-by: Yasufumi Ogawa <yasufum.o at gmail.com>


More information about the dev mailing list