Commit 3a5c72008f2e5536a64889fa2068ed55e331022c
1 parent
69a12f48
Exists in
master
and in
1 other branch
Alteração de privilegios - Usando usuário Vlibras
Showing
1 changed file
with
32 additions
and
43 deletions
Show diff stats
Dockerfile
1 | FROM ubuntu:14.04 | 1 | FROM ubuntu:14.04 |
2 | MAINTAINER Jonathan Brilhante | 2 | MAINTAINER Jonathan Brilhante |
3 | -#USER root | ||
4 | 3 | ||
5 | #Dependencies installation - RabbitMQ / Graylog / Nodejs / Redis / MongoDB / FFmpeg | 4 | #Dependencies installation - RabbitMQ / Graylog / Nodejs / Redis / MongoDB / FFmpeg |
6 | 5 | ||
7 | #Packages updates | 6 | #Packages updates |
8 | -RUN apt-get -y upgrade | ||
9 | -RUN apt-get -y update | 7 | +RUN apt-get -y upgrade && apt-get -y update |
10 | 8 | ||
11 | #Install necessary packages | 9 | #Install necessary packages |
12 | RUN apt-get install -y build-essential libssl-dev sudo curl wget && apt-get clean | 10 | RUN apt-get install -y build-essential libssl-dev sudo curl wget && apt-get clean |
13 | 11 | ||
14 | -#RUN apt-get install default-jdk -y | ||
15 | -#RUN curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash - | ||
16 | - | ||
17 | #Install Nodejs | 12 | #Install Nodejs |
18 | RUN curl -sL https://deb.nodesource.com/setup | sudo bash - | 13 | RUN curl -sL https://deb.nodesource.com/setup | sudo bash - |
19 | -RUN apt-get install -y nodejs | ||
20 | - | ||
21 | -#Install python packages | ||
22 | -RUN apt-get install -y python-setuptools | ||
23 | -RUN easy_install pip | ||
24 | - | ||
25 | -#RUN npm install -g express-generator | ||
26 | -#RUN cd $(npm root -g)/npm && npm install fs-extra && sed -i -e s/graceful-fs/fs-extra/ -e s/fs\.rename/fs.move/ ./lib/utils/rename.js | 14 | +RUN apt-get install -y nodejs && apt-get clean |
27 | 15 | ||
28 | #Install python and python lib for RabbitMQ | 16 | #Install python and python lib for RabbitMQ |
29 | -RUN apt-get install -y python | 17 | +RUN apt-get install -y python-setuptools python && apt-get clean && easy_install pip |
30 | RUN pip install pika | 18 | RUN pip install pika |
31 | 19 | ||
32 | #Install Graylog | 20 | #Install Graylog |
@@ -34,53 +22,54 @@ RUN pip install graypy | @@ -34,53 +22,54 @@ RUN pip install graypy | ||
34 | RUN pip install graypy[amqp] | 22 | RUN pip install graypy[amqp] |
35 | 23 | ||
36 | #Install aditional packages | 24 | #Install aditional packages |
37 | -RUN apt-get install -y pkg-config libfreetype6-dev libpng-dev xvfb | ||
38 | -RUN apt-get install -y python-yaml libgomp1 python-numpy python-pyfits python-matplotlib idle | 25 | +RUN apt-get install -y pkg-config libfreetype6-dev libpng-dev xvfb python-yaml libgomp1 python-numpy python-pyfits python-matplotlib idle && apt-get clean |
39 | RUN pip install nltk==3.0.5 nltk_tgrep --upgrade | 26 | RUN pip install nltk==3.0.5 nltk_tgrep --upgrade |
40 | RUN pip install pysrt pyvirtualdisplay | 27 | RUN pip install pysrt pyvirtualdisplay |
41 | -RUN apt-get install -y software-properties-common | 28 | +RUN apt-get install -y software-properties-common && apt-get clean |
42 | 29 | ||
43 | #Install FFmpeg | 30 | #Install FFmpeg |
44 | -RUN add-apt-repository ppa:mc3man/trusty-media | ||
45 | -RUN apt-get -y update | ||
46 | -RUN apt-get install -y ffmpeg gstreamer0.10-ffmpeg | 31 | +RUN add-apt-repository ppa:mc3man/trusty-media && apt-get -y update && apt-get install -y ffmpeg gstreamer0.10-ffmpeg && apt-get clean |
32 | + | ||
33 | +RUN groupadd -r vlibras && useradd -r -g vlibras vlibras | ||
47 | 34 | ||
48 | WORKDIR / | 35 | WORKDIR / |
49 | RUN mkdir /storage/ | 36 | RUN mkdir /storage/ |
50 | RUN mkdir -p /storage/videos/ | 37 | RUN mkdir -p /storage/videos/ |
38 | +RUN chown -R vlibras /storage/ | ||
51 | 39 | ||
40 | +USER vlibras | ||
52 | #Copy workers to container | 41 | #Copy workers to container |
53 | -WORKDIR /root/ | ||
54 | -ADD ./core/extractor.py /root/extractor.py | ||
55 | -ADD ./core/mixer.py /root/mixer.py | ||
56 | -ADD ./core/renderer.py /root/renderer.py | ||
57 | -ADD ./core/translator.py /root/translator.py | ||
58 | -ADD ./core/PikaManager.py /root/PikaManager.py | ||
59 | -ADD ./core/processManager.py /root/processManager.py | ||
60 | -ADD ./log/ /root/log/ | ||
61 | -ADD ./unityVideo/ /root/unityVideo/ | ||
62 | -ADD ./vlibras-translate/ /root/vlibras-translate/ | ||
63 | -ADD ./vlibras-libs/ /root/vlibras-libs/ | ||
64 | -ADD ./vlibras-api/ /root/vlibras-api/ | 42 | +WORKDIR /home/vlibras/ |
43 | + | ||
44 | +ADD ./core/extractor.py /home/vlibras/extractor.py | ||
45 | +ADD ./core/mixer.py /home/vlibras/mixer.py | ||
46 | +ADD ./core/renderer.py /home/vlibras/renderer.py | ||
47 | +ADD ./core/translator.py /home/vlibras/translator.py | ||
48 | +ADD ./core/PikaManager.py /home/vlibras/PikaManager.py | ||
49 | +ADD ./core/processManager.py /home/vlibras/processManager.py | ||
50 | +ADD ./log/ /home/vlibras/log/ | ||
51 | +ADD ./unityVideo/ /home/vlibras/unityVideo/ | ||
52 | +ADD ./vlibras-translate/ /home/vlibras/vlibras-translate/ | ||
53 | +ADD ./vlibras-libs/ /home/vlibras/vlibras-libs/ | ||
54 | +ADD ./vlibras-api/ /home/vlibras/vlibras-api/ | ||
65 | 55 | ||
66 | #Workers environment variables | 56 | #Workers environment variables |
67 | -ENV VLIBRAS_VIDEO_CREATOR="/root/unityVideo/videoCreator.x86_64" | 57 | +ENV VLIBRAS_VIDEO_CREATOR="/home/vlibras/unityVideo/videoCreator.x86_64" |
68 | ENV VLIBRAS_VIDEO_LIBRAS="/storage/libras" | 58 | ENV VLIBRAS_VIDEO_LIBRAS="/storage/libras" |
69 | ENV VLIBRAS_VIDEO_MIXED="/storage/videos" | 59 | ENV VLIBRAS_VIDEO_MIXED="/storage/videos" |
70 | ENV VLIBRAS_VIDEO_SCREENS="/storage/frames" | 60 | ENV VLIBRAS_VIDEO_SCREENS="/storage/frames" |
71 | 61 | ||
72 | #Translator environment variables | 62 | #Translator environment variables |
73 | -ENV HUNPOS_TAGGER="/root/vlibras-libs/aelius/bin/hunpos-tag" | ||
74 | -ENV AELIUS_DATA="/root/vlibras-libs/aelius/aelius_data" | ||
75 | -ENV TRANSLATE_DATA="/root/vlibras-translate/data" | ||
76 | -ENV NLTK_DATA="/root/vlibras-libs/aelius/nltk_data" | ||
77 | -ENV PYTHONPATH=":/root/vlibras-libs/aelius:/root/vlibras-translate/src:/root/vlibras-libs/aelius:/root/vlibras-translate/src" | ||
78 | - | ||
79 | -#ENV NODE_PATH=/root/vlibras-api/node_modules/;%NODE_PATH% | 63 | +ENV HUNPOS_TAGGER="/home/vlibras/vlibras-libs/aelius/bin/hunpos-tag" |
64 | +ENV AELIUS_DATA="/home/vlibras/vlibras-libs/aelius/aelius_data" | ||
65 | +ENV TRANSLATE_DATA="/home/vlibras/vlibras-translate/data" | ||
66 | +ENV NLTK_DATA="/home/vlibras/vlibras-libs/aelius/nltk_data" | ||
67 | +ENV PYTHONPATH=":/home/vlibras/vlibras-libs/aelius:/home/vlibras/vlibras-translate/src" | ||
80 | 68 | ||
81 | #Portas de comunicacao do container | 69 | #Portas de comunicacao do container |
82 | -WORKDIR /root/vlibras-api/ | 70 | +WORKDIR /home/vlibras/vlibras-api/ |
83 | 71 | ||
72 | +USER root | ||
84 | RUN npm cache clean | 73 | RUN npm cache clean |
85 | RUN rm -rf node_modules | 74 | RUN rm -rf node_modules |
86 | RUN npm i | 75 | RUN npm i |
@@ -89,4 +78,4 @@ RUN npm --version | @@ -89,4 +78,4 @@ RUN npm --version | ||
89 | RUN node --version | 78 | RUN node --version |
90 | 79 | ||
91 | #Comando de entrada quando inicializado | 80 | #Comando de entrada quando inicializado |
92 | -ENTRYPOINT (sleep 1m) ; (node /root/vlibras-api/server.js & sleep 10) ; python /root/processManager.py | 81 | +ENTRYPOINT (sleep 1m) ; (node /home/vlibras/vlibras-api/server.js & sleep 10) ; python /home/vlibras/processManager.py |