|
@ -14,13 +14,15 @@ RUN dnf update -y && \ |
|
|
&& dnf clean all |
|
|
&& dnf clean all |
|
|
|
|
|
|
|
|
# Set up arguments for Hugo installation |
|
|
# Set up arguments for Hugo installation |
|
|
ARG HUGO_VERSION=latest |
|
|
ARG VERSION |
|
|
ARG HUGO_VARIANT=hugo_extended |
|
|
ARG VARIANT |
|
|
ARG WORKSPACE_DIR |
|
|
ARG WORKSPACE_DIR |
|
|
|
|
|
|
|
|
# Download and install Hugo |
|
|
# Download and install Hugo |
|
|
RUN if [ "$HUGO_VERSION" = "latest" ]; then \ |
|
|
RUN if [ "$VERSION" = "latest" ]; then \ |
|
|
HUGO_VERSION=$(curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}'); \ |
|
|
VERSION=$(curl -s https://api.github.com/repos/gohugoio/hugo/releases/latest | grep "tag_name" | awk '{print substr($2, 3, length($2)-4)}'); \ |
|
|
|
|
|
else \ |
|
|
|
|
|
VERSION=$(echo $VERSION | sed 's/v//'); \ |
|
|
fi && \ |
|
|
fi && \ |
|
|
ARCH=$(uname -m) && \ |
|
|
ARCH=$(uname -m) && \ |
|
|
case "$ARCH" in \ |
|
|
case "$ARCH" in \ |
|
@ -28,15 +30,15 @@ RUN if [ "$HUGO_VERSION" = "latest" ]; then \ |
|
|
"arm64"|"aarch64") HUGO_ARCH="arm64";; \ |
|
|
"arm64"|"aarch64") HUGO_ARCH="arm64";; \ |
|
|
*) echo "Unsupported architecture: $ARCH" && exit 1;; \ |
|
|
*) echo "Unsupported architecture: $ARCH" && exit 1;; \ |
|
|
esac && \ |
|
|
esac && \ |
|
|
echo "Installing Hugo version: ${HUGO_VERSION}" && \ |
|
|
echo "Installing Hugo version: ${VERSION}" && \ |
|
|
wget -O hugo.tar.gz https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/${HUGO_VARIANT}_${HUGO_VERSION}_Linux-${HUGO_ARCH}.tar.gz && \ |
|
|
wget -O hugo.tar.gz https://github.com/gohugoio/hugo/releases/download/v${VERSION}/${VARIANT}_${VERSION}_Linux-${HUGO_ARCH}.tar.gz && \ |
|
|
tar -xzf hugo.tar.gz && \ |
|
|
tar -xzf hugo.tar.gz && \ |
|
|
mv hugo /usr/local/bin/hugo && \ |
|
|
mv hugo /usr/local/bin/hugo && \ |
|
|
chmod +x /usr/local/bin/hugo && \ |
|
|
chmod +x /usr/local/bin/hugo && \ |
|
|
rm hugo.tar.gz |
|
|
rm hugo.tar.gz |
|
|
|
|
|
|
|
|
# Create a non-root user for development |
|
|
# Create a non-root user for development |
|
|
ARG USERNAME=vscode |
|
|
ARG USERNAME=alma_www_user |
|
|
ARG USER_UID=1000 |
|
|
ARG USER_UID=1000 |
|
|
ARG USER_GID=$USER_UID |
|
|
ARG USER_GID=$USER_UID |
|
|
|
|
|
|
|
@ -45,7 +47,7 @@ RUN groupadd --gid $USER_GID $USERNAME \ |
|
|
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \ |
|
|
&& echo $USERNAME ALL=\(root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \ |
|
|
&& chmod 0440 /etc/sudoers.d/$USERNAME |
|
|
&& chmod 0440 /etc/sudoers.d/$USERNAME |
|
|
|
|
|
|
|
|
USER vscode |
|
|
USER alma_www_user |
|
|
|
|
|
|
|
|
# Expose port for Hugo server |
|
|
# Expose port for Hugo server |
|
|
EXPOSE 1313 |
|
|
EXPOSE 1313 |
|
@ -54,4 +56,4 @@ EXPOSE 1313 |
|
|
WORKDIR ${WORKSPACE_DIR} |
|
|
WORKDIR ${WORKSPACE_DIR} |
|
|
|
|
|
|
|
|
ENTRYPOINT ["hugo", "server"] |
|
|
ENTRYPOINT ["hugo", "server"] |
|
|
CMD ["--bind=0.0.0.0"] |
|
|
CMD ["--bind=0.0.0.0"] |