Migrate to zola & docker
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
parent
b845271c90
commit
7e8e32ac61
15 changed files with 241 additions and 10 deletions
7
.dockerignore
Normal file
7
.dockerignore
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
public/
|
||||||
|
README.md
|
||||||
|
.git
|
||||||
|
.woodpecker.yaml
|
||||||
|
Dockerfile
|
||||||
|
docker-compose.yaml
|
||||||
|
.gitignore
|
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
||||||
|
public/
|
6
.gitmodules
vendored
6
.gitmodules
vendored
|
@ -1,6 +0,0 @@
|
||||||
[submodule "blog/themes/manis"]
|
|
||||||
path = blog/themes/manis
|
|
||||||
url = https://github.com/yursan9/manis-hugo-theme.git
|
|
||||||
[submodule "blog/themes/HugoTex"]
|
|
||||||
path = blog/themes/HugoTex
|
|
||||||
url = https://github.com/kaisugi/HugoTeX
|
|
17
.woodpecker.yaml
Normal file
17
.woodpecker.yaml
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
steps:
|
||||||
|
- name: publish_image
|
||||||
|
image: woodpeckerci/plugin-docker-buildx
|
||||||
|
settings:
|
||||||
|
repo: git.gnous.eu/${CI_REPO_OWNER}/website
|
||||||
|
dockerfile: Dockerfile
|
||||||
|
platforms: linux/amd64
|
||||||
|
registry: https://git.gnous.eu
|
||||||
|
tag: ${CI_COMMIT}
|
||||||
|
username:
|
||||||
|
from_secret: docker_username
|
||||||
|
password:
|
||||||
|
from_secret: docker_password
|
||||||
|
when:
|
||||||
|
branch: ${CI_REPO_DEFAULT_BRANCH}
|
||||||
|
event: push
|
||||||
|
|
9
Dockerfile
Normal file
9
Dockerfile
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
FROM ghcr.io/getzola/zola:v0.18.0 as zola
|
||||||
|
|
||||||
|
COPY . /project
|
||||||
|
WORKDIR /project
|
||||||
|
RUN ["zola", "build"]
|
||||||
|
|
||||||
|
FROM ghcr.io/static-web-server/static-web-server:2.27
|
||||||
|
WORKDIR /
|
||||||
|
COPY --from=zola /project/public /public
|
9
blog/templates/blog-page.html
Normal file
9
blog/templates/blog-page.html
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<h1 class="title">
|
||||||
|
{{ page.date }} {{ page.title }}
|
||||||
|
</h1>
|
||||||
|
<p class="subtitle"><strong>{{ page.date }}</strong></p>
|
||||||
|
{{ page.content | safe }}
|
||||||
|
{% endblock content %}
|
13
config.toml
Normal file
13
config.toml
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
# The URL the site will be built for
|
||||||
|
base_url = "https://ada.wf/"
|
||||||
|
|
||||||
|
# Whether to automatically compile all Sass files in the sass directory
|
||||||
|
compile_sass = true
|
||||||
|
|
||||||
|
# Whether to build a search index to be used later on by a JavaScript library
|
||||||
|
#build_search_index = true
|
||||||
|
|
||||||
|
[markdown]
|
||||||
|
# Whether to do syntax highlighting
|
||||||
|
# Theme can be customised by setting the `highlight_theme` variable to a theme supported by Zola
|
||||||
|
highlight_code = true
|
5
content/blog/_index.md
Normal file
5
content/blog/_index.md
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
+++
|
||||||
|
sort_by = "date"
|
||||||
|
template = "blog.html"
|
||||||
|
page_template = "blog-page.html"
|
||||||
|
+++
|
11
docker-compose.yaml
Normal file
11
docker-compose.yaml
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
version: "3"
|
||||||
|
|
||||||
|
services:
|
||||||
|
website:
|
||||||
|
image: git.gnous.eu/ada/website:latest
|
||||||
|
restart: always
|
||||||
|
container_name: website
|
||||||
|
read_only: true
|
||||||
|
ports:
|
||||||
|
- "80:80"
|
||||||
|
|
|
@ -8,11 +8,9 @@
|
||||||
<link rel="stylesheet" href="ui.css" />
|
<link rel="stylesheet" href="ui.css" />
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<header>
|
|
||||||
<h1>Site of a random human</h1>
|
|
||||||
</header>
|
|
||||||
|
|
||||||
<main>
|
<main>
|
||||||
|
<h1>Site of a random human</h1>
|
||||||
<h2>$ whoami</h2>
|
<h2>$ whoami</h2>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
|
89
sass/ui.scss
Normal file
89
sass/ui.scss
Normal file
|
@ -0,0 +1,89 @@
|
||||||
|
:root {
|
||||||
|
--main-width: 85vw;
|
||||||
|
--title-color: #ff008C;
|
||||||
|
--bg-color: white;
|
||||||
|
--text-color: #212121;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--bg-color: #212121;
|
||||||
|
--text-color: white;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* large screen */
|
||||||
|
@media only screen and (min-width: 868px) {
|
||||||
|
:root {
|
||||||
|
--main-width: 50vw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
html {
|
||||||
|
font-family: system-ui;
|
||||||
|
scroll-behavior: smooth;
|
||||||
|
color: var(--text-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
body {
|
||||||
|
max-width: var(--main-width);
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
background-color: var(--bg-color);
|
||||||
|
line-height: 1.65;
|
||||||
|
}
|
||||||
|
|
||||||
|
h3 {
|
||||||
|
font-size: 24px;
|
||||||
|
font-weight: normal;
|
||||||
|
color: var(--title-color);
|
||||||
|
margin-bottom: 2px;
|
||||||
|
margin-top: 0px;
|
||||||
|
a:hover {
|
||||||
|
margin-left: 4px;
|
||||||
|
text-decoration: solid underline 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: dodgerblue;
|
||||||
|
text-decoration: none;
|
||||||
|
transition: ease 250ms;
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:hover {
|
||||||
|
color: var(--title-color);
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
||||||
|
|
||||||
|
a:visited {
|
||||||
|
color: var(--title-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
h1, h2 {
|
||||||
|
margin-bottom: 2px;
|
||||||
|
font-weight: 600;
|
||||||
|
color: var(--title-color)
|
||||||
|
}
|
||||||
|
|
||||||
|
h1 {
|
||||||
|
font-size: 40px;
|
||||||
|
line-height: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
h2 {
|
||||||
|
font-size: 32px;
|
||||||
|
}
|
||||||
|
|
||||||
|
header {
|
||||||
|
text-align: center;
|
||||||
|
p {
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 600px;
|
||||||
|
word-spacing: 3px;
|
||||||
|
}
|
||||||
|
}
|
25
templates/base.html
Normal file
25
templates/base.html
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="fr">
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<title>Ada blog</title>
|
||||||
|
<link rel="stylesheet" href="/ui.css">
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<section class="section">
|
||||||
|
<div class="container">
|
||||||
|
<header>
|
||||||
|
<p>
|
||||||
|
<a href="/">Home</a>
|
||||||
|
|
|
||||||
|
<a href="/blog">blog</a>
|
||||||
|
</p>
|
||||||
|
</header>
|
||||||
|
{% block content %} {% endblock %}
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
9
templates/blog-page.html
Normal file
9
templates/blog-page.html
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<h1 class="title">
|
||||||
|
{{ page.date }} {{ page.title }}
|
||||||
|
</h1>
|
||||||
|
<p class="subtitle"><strong>{{ page.date }}</strong></p>
|
||||||
|
{{ page.content | safe }}
|
||||||
|
{% endblock content %}
|
13
templates/blog.html
Normal file
13
templates/blog.html
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<h1 class="title">
|
||||||
|
{{ section.title }}
|
||||||
|
</h1>
|
||||||
|
<ul>
|
||||||
|
<!-- If you are using pagination, section.pages will be empty. You need to use the paginator object -->
|
||||||
|
{% for page in section.pages %}
|
||||||
|
<li><a href="{{ page.permalink | safe }}">{{ page.title }}</a></li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
{% endblock content %}
|
31
templates/index.html
Normal file
31
templates/index.html
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{% extends "base.html" %}
|
||||||
|
|
||||||
|
{% block content %}
|
||||||
|
<header>
|
||||||
|
<h1>Site of a random human</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<main>
|
||||||
|
<h2>$ whoami</h2>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
I am currently a student in security. I spend my time to make a useless network and system infrastructure. I love free software (!=opensource).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<h2>$ ls Project</h2>
|
||||||
|
|
||||||
|
<h3>Homelab</h3>
|
||||||
|
<p>A small lab to learn network and system. I use Proxmox in bare-metal and Ubuntu for my virtual machines. I
|
||||||
|
automate some task with Ansible.</p>
|
||||||
|
<h3><a href="https://git.gnous.eu/gnouseu/plakken">Plakken</a></h3>
|
||||||
|
<p>A web paste (like hastebin) written in go</p>
|
||||||
|
<h3><a href="https://ilearned.eu">I Learned</a></h3>
|
||||||
|
<p>A dead collaborative blog</p>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer>
|
||||||
|
<p>If you want to contact me, i y have a mail ada @ gnous.eu. I have some useless project on my <a href="https://github.com/r4iponce">Github</a> and <a href="https://git.gnous.eu/ada">Gitea</a></p>
|
||||||
|
</footer>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
{% endblock content %}
|
Loading…
Reference in a new issue