2.0 KiB
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.
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