Источники

Установка

Подготавливаем директорию

1
2
3
4
mkdir /dconf/hugo
cd /dconf/hugo
chmod -R 770 /dconf/hugo
chown -R quasinas:quasinas /dconf/hugo

Удаление

1
2
3
4
5
6
rm -rf /dconf/hugo; \
mkdir /dconf/hugo

docker stop hugo; \
docker rm hugo; \
docker rmi klakegg/hugo:ext-debian

Генерация шаблона сайта. Контейнер должен отработать и удалиться благодаря опции --rm.

1
2
3
4
5
6
docker run -it \
  --rm \
  --name="hugo" \
  -v /dconf/hugo:/src \
klakegg/hugo:ext-debian \
  new site /src

Выбор темы

Необходимо определиться с темой для сайта. Выбрать их можно тут. Для себя я выбрал тему Tania. Выбранную тему скачиваем и добавляем в нашу директорию .themes/. Удобно это сделать через git submodule.

1
2
3
4
cd /dconf/hugo
git init
git submodule add https://github.com/WingLim/hugo-tania themes/hugo-tania
echo theme = \"hugo-tania\" >> config.toml

С темами идут примеры сайтов. Отталкиваясь от него настраивать будет проще. Копируем их в корень директории.

1
cp -r themes/hugo-tania/exampleSite/* .

Первичный запуск

1
2
3
4
5
6
7
8
9
docker run -it \
  --rm \
  --name="hugo" \
  -e PUID=1024 \
  -e PGID=1024 \
  -p 1313:1313 \
  -v /dconf/hugo:/src \
klakegg/hugo:ext-debian \
  server --bind=192.168.10.192 --baseURL=http://192.168.10.192:1313 --disableFastRender -D

Git

Подключаем удаленный сервер git и выгружаем туда сайт.

1
2
3
cd /dconf/hugo
git remote add origin http://192.168.10.192:8980/nas/hugo-main.git
git pull origin main

Для развертывания сайта в другом месте теперь просто клонируем репозиторий, и обновляем подмодули.

1
2
3
4
cd /dconf/hugo
git clone http://192.168.10.192:8980/nas/hugo-main.git .
git submodule update --init
git submodule foreach git pull origin main

Запускаем контейнер.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
docker run -d \
  --name="hugo" \
  -e PUID=1000 \
  -e PGID=1000 \
  -p 1313:1313 \
  -v /dconf/hugo:/src \
  -e TZ=Europe/Moscow \
  --restart unless-stopped \
klakegg/hugo:ext-debian \
  server --baseURL=https://dotgs.ru --disableFastRender --appendPort=false

Связанные статьи