sorgenti di https://bglug.it
Go to file
Paolo Asperti 5ea8156962
Container Build / build-image (push) Successful in 40s Details
Container Publish / build-image (push) Failing after 1m16s Details
Vulnerability Scan / Daily Vulnerability Scan (push) Failing after 5s Details
wip posts
2024-04-23 23:15:01 +02:00
.gitea/workflows import iniziale 2024-04-09 23:12:57 +02:00
archetypes import iniziale 2024-04-09 23:12:57 +02:00
content wip posts 2024-04-23 23:15:01 +02:00
docker/rootfs import iniziale 2024-04-09 23:12:57 +02:00
import/hugo-export/wp-content/uploads wip posts 2024-04-23 23:15:01 +02:00
static import iniziale 2024-04-09 23:12:57 +02:00
themes import iniziale 2024-04-09 23:12:57 +02:00
.dockerignore import iniziale 2024-04-09 23:12:57 +02:00
.editorconfig editorconfig 2024-04-16 22:22:37 +02:00
.gitignore import iniziale 2024-04-09 23:12:57 +02:00
.gitmodules import iniziale 2024-04-09 23:12:57 +02:00
Dockerfile import iniziale 2024-04-09 23:12:57 +02:00
LICENSE import iniziale 2024-04-09 23:12:57 +02:00
README.md dev notes 2024-04-16 23:33:34 +02:00
config.yml import iniziale 2024-04-09 23:12:57 +02:00

README.md

bglug.it

BgLUG website

Development instructions

Clone repo with the command:

git clone --recurse-submodules ssh://git@git.libreschool.org:1022/bglug/bglug.it.git
cd bglug.it

If you did clone this repo in the usual way, you probably missed the theme's git submodule. To download the missing submodule:

cd bglug.it
git submodule update --init --recursive

Then start the hugo live server:

hugo server

or

docker run --rm -d --name hugo_ls -v "$PWD:/src" -p "1313:1313" git.libreschool.org/bglug/hugo-extended:latest serve -s /src --gc --minify --bind 0.0.0.0

You can produce the complete website with:

hugo

The complete website will be placed in the public directory.

Development misc notes

The imported posts are marked as "draft" and as such aren't rendered in the final output. If you want to render all the drafts, you can add the -D flag:

hugo server -D

Building the container image

This website can be used as a container image; to do so in docker:

docker build -t bglug-website .

Then you can run the image:

docker run -d -p 6080:80 bglug-website

With the above command, the website will be reachable via HTTP to port 6080.

It's also possible do bind mount the container's /logs directory, to expose nginx logs.

Using the container image

Plain docker invocation

docker run -d --name bglug_website -p 6080:80 git.libreschool.org/bglug/bglug.it:latest

Via docker compose

version: "3.9"
services:
  web:
    image: git.libreschool.org/libreschool/bglug.it:latest
    restart: always
    container_name: bglug_website
    volumes:
      - ./logs:/logs
    ports:
      - 6080:80

Configure log rotation

By default logs are stored in a volume mounted on /logs directory inside the container. The access log file is /logs/nginx.access.log and it is rotate daily with a configurable retention, 7 days by default.

version: "3.9"
services:
  web:
    image: git.libreschool.org/bglug/bglug.it:latest
    restart: always
    container_name: bglug_website
    volumes:
      - ./logs:/logs
    environment:
      LOG_DAYS: 14
    ports:
      - 6080:80