You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
wttr.in/Dockerfile

55 lines
1.4 KiB

FROM ubuntu:18.04
RUN apt-get update && \
apt-get install -y curl \
git \
python \
python-pip \
python-dev \
autoconf \
libtool \
gawk
RUN curl -O https://dl.google.com/go/go1.10.3.linux-amd64.tar.gz
RUN tar xvf go1.10.3.linux-amd64.tar.gz
WORKDIR /app
COPY ./bin /app/bin
COPY ./lib /app/lib
COPY ./share /app/share
COPY ./requirements.txt /app
COPY ./src/we-lang/we-lang.go /app
# There are several files that must be fetched/created manually
# before building the image
COPY ./.wegorc /root
COPY ./.ip2location.key /root
COPY ./airports.dat /app
COPY ./GeoLite2-City.mmdb /app
RUN export PATH=$PATH:/go/bin && \
go get -u github.com/mattn/go-colorable && \
go get -u github.com/klauspost/lctime && \
go get -u github.com/mattn/go-runewidth && \
export GOBIN="/root/go/bin" && \
go install /app/we-lang.go
RUN pip install -r requirements.txt
RUN mkdir /app/cache
RUN mkdir -p /var/log/supervisor && \
mkdir -p /etc/supervisor/conf.d
RUN chmod -R o+rw /var/log/supervisor && \
chmod -R o+rw /var/run
COPY share/docker/supervisord.conf /etc/supervisor/supervisord.conf
ENV WTTR_MYDIR="/app"
ENV WTTR_GEOLITE="/app/GeoLite2-City.mmdb"
ENV WTTR_WEGO="/root/go/bin/we-lang"
ENV WTTR_LISTEN_HOST="0.0.0.0"
ENV WTTR_LISTEN_PORT="8002"
EXPOSE 8002
CMD ["/usr/local/bin/supervisord"]