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.
64 lines
1.7 KiB
64 lines
1.7 KiB
###
|
|
### Meta Information
|
|
###
|
|
FROM localhost/debian
|
|
|
|
# deploy options
|
|
# -p (port) and -v (volume) both go host:container
|
|
LABEL config_default="\
|
|
-p 9082:80 \
|
|
-v /srv/vol/startpage/data:/vol/data"
|
|
|
|
# Build Variables
|
|
# uid that the files owner user should have
|
|
ARG FILESUID=5000
|
|
|
|
###
|
|
### General Setup
|
|
###
|
|
|
|
# install packages we want
|
|
RUN apt update -y && apt install -y apache2 libapache2-mod-php php-json
|
|
|
|
# autodetect php version and put it in /etc/environment
|
|
RUN echo "PHPV=$(echo $(php -r 'echo PHP_VERSION;') | cut -d '.' -f 1-2)" >> /etc/environment
|
|
|
|
# change www-data's UID to the file owner UID
|
|
RUN usermod --uid $FILESUID www-data && \
|
|
groupmod --gid $FILESUID www-data && \
|
|
chown -R www-data:www-data /var/www
|
|
|
|
###
|
|
### Apache
|
|
###
|
|
|
|
# enable modules we need
|
|
RUN a2enmod php${PHPV:?}
|
|
|
|
# copy site config
|
|
COPY assets/site.conf /etc/apache2/sites-available/startpage.conf
|
|
RUN a2dissite 000-default && a2ensite startpage
|
|
|
|
###
|
|
### browserStartpage
|
|
###
|
|
|
|
# download app
|
|
WORKDIR /root
|
|
RUN wget https://github.com/saschadiercks/browserStartpage/archive/master.zip && \
|
|
echo "Unzipping ..." && \
|
|
unzip -q master.zip && \
|
|
mv browserStartpage-master/htdocs /var/www/html/startpage && \
|
|
chown -R www-data:www-data /var/www/html && \
|
|
rm -r browserStartpage-master
|
|
|
|
# make symlinks
|
|
WORKDIR /var/www/html
|
|
RUN rm startpage/config/config.php && \
|
|
ln -s /vol/data/config.php startpage/config/config.php && \
|
|
rm startpage/data/data.json && \
|
|
ln -s /vol/data/data.json startpage/data/data.json && \
|
|
rm -r startpage/assets/thumbnails && \
|
|
ln -s /vol/data/thumbnails startpage/assets/thumbnails && \
|
|
rm -r startpage/assets/wallpaper && \
|
|
ln -s /vol/data/wallpaper startpage/assets/wallpaper
|
|
|