FROM alpine:latest

# Install dependencies
RUN apk add --no-cache git curl tar

# Download and install Hugo
RUN HUGO_VERSION=$(curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest | grep 'tag_name' | cut -d\" -f4) && \
    curl -L https://github.com/gohugoio/hugo/releases/download/${HUGO_VERSION}/hugo_extended_${HUGO_VERSION#v}_Linux-64bit.tar.gz | tar -xz && \
    mv hugo /usr/local/bin/

# Create a new Hugo site
RUN hugo new site mysite

# Add Decap CMS
WORKDIR /mysite/static/admin
RUN git clone https://github.com/decapcms/decap.git .

# Expose volume for Hugo site
VOLUME /mysite

# Serve the site
EXPOSE 1313
CMD ["hugo", "server", "--bind=0.0.0.0"]
