版本
Docker:1.12.1
DPDK:16.07
Docker的安装
在Ubuntu中docker的安装还是很简单的。参考官方文档1就行了。需要注意的是只能在64位,linux版本号不低于3.11.0-15-generic
的发行版上运行。所以在OpenVZ的VPS上不能运行。
制造DPDK的Docker镜像
这边主要参考的是网上的一篇博客2和红帽的Github[^2]来写Dockerfile的。Dockerfile如下:
FROM ubuntu
MAINTAINER NachtZ<nachtz@outlook.com>
LABEL RUN docker run -it --privileged -v /sys/bus/pci/devices:/sys/bus/pci/devices -v /sys/kernel/mm/hugepages:/sys/kernel/mm/hugepages -v /sys/devices/system/node:/sys/devices/system/node -v /dev:/dev --name NAME -e NAME=NAME -e IMAGE=IMAGE IMAGE"
# Setup yum repos, or use subscription-manager
# Install DPDK support packages.
RUN apt-get update && apt-get install -y libpcap-dev wget xz-utils gcc automake autoconf libtool make
# Build DPDK and pktgen-dpdk for x86_64-native-linuxapp-gcc.
WORKDIR /root
COPY ./build_dpdk.sh /root/build_dpdk.sh
COPY ./dpdk-profile.sh /etc/profile.d/
#RUN /root/build_dpdk.sh
# Defaults to a bash shell, you could put your DPDK-based application here.
CMD ["/bin/bash"]
这个Dockerfile的注解如下:
FROM ubuntu
:说明该镜像的源镜像是Ubuntu。
MAINTAINER NachtZ<nachtz@outlook.com>
:介绍镜像的作者。
LABEL RUN docker run -it --privileged -v /sys/bus/pci/devices:/sys/bus/pci/devices -v /sys/kernel/mm/hugepages:/sys/kernel/mm/hugepages -v /sys/devices/system/node:/sys/devices/system/node -v /dev:/dev --name NAME -e NAME=NAME -e· IMAGE