36 lines
		
	
	
		
			764 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			764 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
| # 2025-08-13 Hyperling
 | |
| 
 | |
| ## Image ##
 | |
| FROM debian:trixie-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/crontab /etc/crontab
 | |
| COPY files/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" "$BRANCH" "$PROD" "$DEV"
 |