As I got access to my GitLab account, first thing was to set up my SSH keys
cat ~/.ssh/id_rsa.pub
and then copy result to special field in GitLab interface.
All next steps were quite easy for me as my main area of work is software development and I am working with Git every day, using both command-line interface and WebStorm IDE :)
Then I noticed that my repository is Mkdocs website, which can be generated and deployed to every hosting, but here we
use GitLab Pages feature as hosting.
.gitlab-ci.yml
is used as descriptor for making something with sources, in our case we are setting up build environment
by choosing the image of Docker container as python
, then installing all requirements which means packages needed
for building, then build the website, and post result static folder as artifact
I tweaked standard Material theme a little bit, but was not satisfied by given result
But in general I liked the idea to edit website through bunch of Markdown files, and I started to search for modern build engines which work with Markdown syntax but have more interesting theming. So I went to Github (I use it almost every day as software developer) and found one of these awesome-lists which collects all engines in one place https://github.com/myles/awesome-static-generators.
I choose then Hugo as it written in #Go language (it is pretty modern language, I used it in some projects), fast and have great collection of themes.
I chose Terminal theme from list on https://themes.gohugo.io
Hugo have embedded development server which means I was able to develop and test my website locally while tuning it.
Then I just started to create Markdown files with description of my work and all pages.
All used images I processed with ImageOptim utility, and saved some space in the cloud :)
I created separate page when I introduced myself and describe who I am and what I do :) You can check link http://fabacademy.org/2019/labs/polytech/students/anton-pchelkin/about/, however it can be viewed from any place of my website.
When I finished to edit .md files, I then put them all to git index by typing git add .
, then I “mark” current state as separate “version” by creating commit: git commit
and writing some comments for it. To push all my work in the cloud, simply do git push
.
.gitignore
file and list it there
My .gitignore
looks like this:
.env
_site
.DS_Store
public
**/node_modules