Move to dockerized dokku deployment
This commit is contained in:
parent
4ab55e9fa4
commit
bb3e163957
|
@ -1,23 +1,15 @@
|
||||||
image: registry.gitlab.com/pages/hugo/hugo_extended:latest
|
stages:
|
||||||
|
- deploy
|
||||||
|
|
||||||
variables:
|
deploy:
|
||||||
GIT_SUBMODULE_STRATEGY: recursive
|
rules:
|
||||||
|
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
|
||||||
pages:
|
image: ilyasemenov/gitlab-ci-git-push
|
||||||
before_script:
|
stage: deploy
|
||||||
- apk add --no-cache imagemagick
|
environment:
|
||||||
script:
|
name: production
|
||||||
- hugo
|
url: https://www.devroom.io
|
||||||
- ls -lah
|
|
||||||
- find ./public -name '*.jpg' -exec mogrify -auto-orient -monitor -sampling-factor 4:2:0 -strip -interlace JPEG -colorspace sRGB -resize 2048 -compress JPEG -quality 80 {} \;
|
|
||||||
artifacts:
|
|
||||||
paths:
|
|
||||||
- public
|
|
||||||
only:
|
only:
|
||||||
- master
|
- master
|
||||||
|
|
||||||
test:
|
|
||||||
script:
|
script:
|
||||||
- hugo
|
- git-push ssh://dokku@9up.nl:22/devroom.io
|
||||||
except:
|
|
||||||
- master
|
|
||||||
|
|
30
Dockerfile
Normal file
30
Dockerfile
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
## `source` is used to generate the static HTML with Hugo
|
||||||
|
FROM debian:11 as source
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get install -y imagemagick ca-certificates git wget
|
||||||
|
|
||||||
|
# Install Hugo
|
||||||
|
ENV HUGO_VERSION 0.111.2
|
||||||
|
RUN wget https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_extended_${HUGO_VERSION}_Linux-64bit.tar.gz && \
|
||||||
|
tar -xvf hugo_extended_${HUGO_VERSION}_Linux-64bit.tar.gz && \
|
||||||
|
mv hugo /usr/local/bin/hugo && \
|
||||||
|
chmod +x /usr/local/bin/hugo
|
||||||
|
|
||||||
|
# Copy site source
|
||||||
|
WORKDIR /src
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
# Initialize submodules, like themes
|
||||||
|
RUN git submodule update --init --recursive
|
||||||
|
|
||||||
|
# Generate the site into /src/public
|
||||||
|
RUN /usr/local/bin/hugo
|
||||||
|
|
||||||
|
# Mogrify all images to be more efficient for the web
|
||||||
|
RUN find ./public -name '*.jpg' -exec mogrify -auto-orient -monitor -sampling-factor 4:2:0 -strip -interlace JPEG -colorspace sRGB -resize 2048 -compress JPEG -quality 80 {} \;
|
||||||
|
|
||||||
|
## Create the final image with Nginx serving the static site
|
||||||
|
FROM nginx:1-alpine
|
||||||
|
COPY --from=source /src/public /usr/share/nginx/html
|
Loading…
Reference in New Issue
Block a user