group-based-policy/gbpservice/contrib/nfp/tools/image_builder/Dockerfile
Rajendra Machani be087c930b NFP - Configurator docker build fix
NFP configurator image build was failing due to
the docker build failure. The failure is with
the pip package.

pip package version was very old, and needed
to be upgraded. With this fix image build is fine.

Change-Id: Ib8acab0f1daf943c986d9b8a4dfbc22dd33dc1ff
Closes-Bug: #1669454
2017-03-03 10:52:19 +05:30

58 lines
1.8 KiB
Docker

FROM ubuntu:14.04
# dependencies
RUN apt-get -y update --fix-missing && apt-get -y --force-yes install\
python2.7\
python-pip\
python2.7-dev\
build-essential libssl-dev libffi-dev\
libyaml-dev\
python-ipaddr\
rabbitmq-server\
python-dev
# python dependencies
RUN python -m pip install -U pip
RUN pip install\
python-keystoneclient\
oslo.config==3.6.0\
oslo.log==2.4.0\
oslo.messaging==4.6.1\
oslo.db==4.4.0\
oslo.policy\
pecan==1.0.4\
pika==0.10.0\
amqp==2.0.3\
wsme\
neutron-lib\
octavia==0.9
# copy local src to docker image
COPY ./gbpservice /usr/local/lib/python2.7/dist-packages/gbpservice
COPY ./neutron /usr/local/lib/python2.7/dist-packages/neutron
COPY ./neutron_lbaas /usr/local/lib/python2.7/dist-packages/neutron_lbaas
COPY ./configurator_run.sh /configurator_run.sh
# Cache buster
ADD https://www.random.org/strings/?num=10&len=8&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new cache-buster
# clean-up
RUN rm -rf /var/lib/apt/lists/* && apt-get autoremove -y
RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/nfp/bin/nfp /usr/bin/
RUN chmod +x /usr/bin/nfp
RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/contrib/nfp/bin/nfp_controller.ini /etc/
RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/contrib/nfp/bin/policy.json /etc/
RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/contrib/nfp/tools/image_builder/nfp-controller /etc/init.d/
RUN cp /usr/local/lib/python2.7/dist-packages/gbpservice/contrib/nfp/tools/image_builder/nfp-pecan /etc/init.d/
RUN mkdir -p /var/log/nfp
RUN touch /var/log/nfp/nfp_configurator.log
RUN touch /var/log/nfp/nfp_pecan.log
RUN sed -i "/version = version.encode('utf-8')/a\ version = '1.8.0'" /usr/local/lib/python2.7/dist-packages/pbr/packaging.py
RUN chmod +555 /configurator_run.sh
EXPOSE 8070:8080
EXPOSE 5672:5672
ENV HOME /root
CMD ["/configurator_run.sh"]