36 lines
766 B
Docker
36 lines
766 B
Docker
# 2025-08-13 Hyperling
|
|
|
|
## Image ##
|
|
FROM debian:bookworm-slim
|
|
|
|
## Setup ##
|
|
# System Dependencies
|
|
RUN apt-get update && apt-get install -y git hugo nginx cron curl bash sudo htop
|
|
|
|
# User and Group
|
|
#RUN groupadd -r hugo && useradd -r -g hugo hugo
|
|
|
|
# Hugo Directory Tree
|
|
RUN mkdir -pv /var/www/hugo/
|
|
|
|
# NGINX Directory Tree
|
|
RUN mkdir -pv /var/www/html/
|
|
|
|
# Copy Cron Job to Update Git Repo
|
|
COPY files/hugo.crontab /etc/crontab
|
|
COPY files/hugo.cronjob.sh /var/www/hugo/cronjob.sh
|
|
|
|
# Hugo User Permissions
|
|
RUN chown -Rv www-data:www-data /var/www/
|
|
RUN chmod +x /var/www/hugo/cronjob.sh
|
|
|
|
# Copy Start Script
|
|
COPY files/main.sh /root/main.sh
|
|
RUN chmod +x /root/main.sh
|
|
|
|
## Main ##
|
|
# Install + Run Website
|
|
WORKDIR /var/www/
|
|
USER root
|
|
CMD /root/main.sh "$REPO" "$PROD" "$DEV"
|