]> jfr.im git - uguu.git/blob - docker/Dockerfile
Merge pull request 'Dockerfile for Uguu' (#71) from r4jeshwar/dockerize-uguu into...
[uguu.git] / docker / Dockerfile
1 FROM ubuntu:latest
2
3 ARG VERSION
4
5 RUN apt-get update && \
6 apt install -y software-properties-common && \
7 add-apt-repository ppa:ondrej/php && \
8 apt-get install -y build-essential nginx-full php8.0-fpm php8.0 sqlite3 php8.0-sqlite3 nodejs certbot git npm cron gettext-base && \
9 apt clean
10
11 WORKDIR /var/www/
12
13 COPY docker/docker-entrypoint.sh .
14
15 ADD https://github.com/nokonoko/Uguu/archive/refs/tags/v${VERSION}.tar.gz v${VERSION}.tar.gz
16
17 RUN tar xvf v${VERSION}.tar.gz && \
18 mv Uguu-${VERSION}/ uguu
19
20 RUN mkdir /var/www/uguu/dist && \
21 mkdir /var/www/db && \
22 mkdir /var/www/files
23
24 RUN sqlite3 /var/www/db/uguu.sq3 -init /var/www/uguu/sqlite_schema.sql && \
25 chown -R www-data:www-data /var/www/db /var/www/files && \
26 chmod -R 775 /var/www/
27
28 RUN chmod a+x /var/www/uguu/checkdb.sh && \
29 chmod a+x /var/www/uguu/checkfiles.sh && \
30 sed -i 's#/path/to/files/#/var/www/uguu/files/#g' /var/www/uguu/checkfiles.sh && \
31 sed -i 's#/path/to/db/uguu.sq3#/var/www/db/uguu.sq3#g' /var/www/uguu/checkdb.sh
32
33 RUN echo "0,30 * * * * bash /var/www/uguu/checkfiles.sh" >> /var/spool/cron/crontabs/root && \
34 echo "0,30 * * * * bash /var/www/uguu/checkdb.sh" >> /var/spool/cron/crontabs/root
35
36 COPY docker/uguu.conf /etc/nginx/conf.d/
37
38 COPY dist.json /var/www/uguu/_dist.json
39
40 EXPOSE 80
41
42 ENTRYPOINT [ "bash", "/var/www/docker-entrypoint.sh" ]