Dockerfile 2.07 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
# DOCKERi skript
#   OMA TEENUSE ettevalmistamisel asenda nii käesolevas failis kui ka failis README.MD string 'kl_teenus' sobiva nimega, 
#   näiteks sõnade loendaja 'wc' korral 'kl_wc'.
#   Nimed 'github.com' ja 'username' tuleb asendada vastavalt kasutatavale GIT repositooriumile.
#
# DOCKERi paigaldamiseks ja käivitamiseks:
#   cd /soovitud/asukoht/oma/teenuse/koodile/serveris
#   wget https://github.com/username/kl_teenus/raw/master/Dockerfile
#   docker build -t kl_teenus .
#   docker run --name kl_redis --rm --restart=no redis
#   docker run --name kl_teenus -d --link kl_redis:redis -p 3003:3003 -v /etc/wrapper/teenus/:/config kl_teenus
#
# DOCKERi seiskamiseks:
#   docker kill kl_teenus
#   docker rm kl_teenus
#

FROM    debian:jessie

# Kui Debianil pole vaikimisi kaasas GCC vajalikke teeke vms, siis tuleb need ka lasta installida.

RUN apt-get update && \
    apt-get -y install curl sudo && \
    curl -sL https://deb.nodesource.com/setup | sudo bash - && \
Indrek Jentson's avatar
Indrek Jentson committed
25
    apt-get -y install build-essential nodejs wget && \
26 27 28 29 30 31
    apt-get -y install git && echo "Installed 2"

RUN npm install -g forever

# Valmistame ette koodi, mida me DOCKERis kasutama hakkame. Siinkohal peaks plaanima, et mis failid kus kataloogis peaks olema

Indrek Jentson's avatar
Indrek Jentson committed
32
RUN mkdir -p /wrapper && mkdir -p /config && mkdir -p /wrapper/files && mkdir -p /wrapper/tmp && mkdir -p /wrapper/logs && \
33
cd /wrapper && \
Indrek Jentson's avatar
Indrek Jentson committed
34
git clone 'https://gitlab.keeleressursid.ee/keeleliin/keeleliin-wrapper.git' && \
35 36
mv keeleliin-wrapper/* . && \
mv keeleliin-wrapper/.g* . && \
37 38 39 40 41 42
npm install && \
echo "NPM is installed"

# SIIA ALLA lisa kõik installeerimise käsud, mis on vajalikud sisulist tööd tegeva tarkvara X paigaldamiseks.
# Tarkvara X paigaldamine algab 

Indrek Jentson's avatar
Indrek Jentson committed
43
# Kuna kasutame linuxi käsurea utiliiti, siis midagi spetsiaalset pole vaja lisada
Indrek Jentson's avatar
Indrek Jentson committed
44

Indrek Jentson's avatar
Indrek Jentson committed
45 46
RUN cd /wrapper && \
git clone 'https://gitlab.keeleressursid.ee/keeleliin/kl-wc.git' && \
Indrek Jentson's avatar
Indrek Jentson committed
47 48
cp kl-wc/config_dist.js . && \
cp kl-wc/command.sh . && \
49
chmod +x command.sh
50 51 52

# Tarkvara X paigaldamine lõppeb

53
# Expose port
Indrek Jentson's avatar
Indrek Jentson committed
54
EXPOSE  3006
55 56

VOLUME ["/config"]
Indrek Jentson's avatar
Indrek Jentson committed
57
VOLUME ["/wrapper/logs"]
58

59
CMD cd /wrapper && ./docker_start.sh