docker: Add support for experimental collectd container
[barometer.git] / docker / barometer-collectd-experimental / Dockerfile
1 FROM centos:7
2 RUN yum update -y && \
3         yum install -y which sudo git && \
4         yum clean all && \
5         git config --global http.sslVerify false
6
7 ENV DOCKER y
8 ENV COLLECTD_FLAVOR experimental
9 ENV WITH_DPDK y
10 ENV repos_dir /src
11 ENV openstack_plugins /src/barometer/src/collectd-openstack-plugins
12
13 WORKDIR ${repos_dir}
14 RUN mkdir -p ${repos_dir}/barometer
15 COPY . ${repos_dir}/barometer
16 COPY docker/barometer-collectd-experimental/collectd_apply_pull_request.sh \
17      ${repos_dir}/barometer/src/collectd/
18
19 # copying additional experimental configs on top of configs for 'master'
20 # branch release
21 COPY docker/barometer-collectd-experimental/experimental-configs/* \
22      ${repos_dir}/barometer/src/collectd/collectd_sample_configs-master/
23
24 WORKDIR ${repos_dir}/barometer/systems
25 RUN sh ./build_base_machine.sh && \
26         useradd -ms /bin/bash collectd_exec && \
27         echo "collectd_exec ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
28
29 WORKDIR ${openstack_plugins}
30 RUN make && \
31         pip install --upgrade pip && \
32         pip install -r ${openstack_plugins}/collectd-openstack-plugins/requirements.txt
33
34 COPY docker/barometer-collectd-experimental/run_collectd.sh /run_collectd.sh
35 RUN chmod +x /run_collectd.sh
36
37 ENTRYPOINT ["/run_collectd.sh"]