Merge "[common] Adding route entry command to cmdline"
[samplevnf.git] / VNF_Catalogue / cronjob / Dockerfile
1 ###############################################################
2 #   Docker container for VNF_Catalogue cronjob service
3 ###############################################################
4 # Purpose: Don't run it from here! Use docker-compose(See README.md)
5 #
6 # Maintained by Kumar Rishabh :: penguinRaider
7 ##
8 # All rights reserved. This program and the accompanying materials
9 # are made available under the terms of the Apache License, Version 2.0
10 # which accompanies this distribution, and is available at
11 # http://www.apache.org/licenses/LICENSE-2.0
12 #
13
14 FROM node:boron
15 MAINTAINER KumarRishabh::penguinRaider <shailrishabh@gmail.com>
16 LABEL version="v0.0.1" description="Open Source VNF_Catalogue for OPNFV"
17
18 RUN apt-get update
19 RUN apt-get install vim -y
20 RUN apt-get install cron -y
21
22 ENV DB_HOST mysql
23 ENV DB_USER vnf_user
24 ENV DB_PASSWORD vnf_password
25 ENV DB_DATABASE vnf_catalogue
26
27 RUN mkdir -p /usr/src/app
28 WORKDIR /usr/src/app
29
30 COPY package.json /usr/src/app/
31
32 # RUN npm config set proxy http://10.4.20.103:8080
33 # RUN npm config set https-proxy http://10.4.20.103:8080
34
35 RUN npm install
36
37 # ADD crontab /etc/cron.d/simple-cron
38
39 COPY . /usr/src/app
40
41 RUN chmod +x git_count_loc.sh
42 RUN chmod +x script.sh
43
44 RUN crontab crontab
45 RUN sed -i '/session    required     pam_loginuid.so/c\#session    required   pam_loginuid.so' /etc/pam.d/cron
46
47 # Give execution rights on the cron job
48 # RUN chmod 0644 /etc/cron.d/simple-cron
49 #
50 # # Create the log file to be able to run tail
51 RUN touch /var/log/cron.log
52
53 # The ordering of events should be coming up of mysql service and then running
54 # of cronjob. To enforce this causal relationship we use a 3rd_party script.
55 CMD [ "./3rd_party/wait-for-it/wait-for-it.sh", "mysql:3306", "-t", "0", "--", "cron", "&&", "tail", "-f", "/var/log/cron.log"]