This is the source of the OCF/XCF Unix System Administration DeCal website, currently available at decal.ocf.berkeley.edu.
The current iteration uses Jekyll to produce pages.
decal-web is built for Jekyll, a static site generator. View the quick start guide for more information.
This is the reccomended method for development.
- Install Docker following instructions from here
- Pull the Docker image
$ docker pull jekyll/jekyll
- Clone this repository
$ git clone https://github.com/0xcf/decal-web
$ cd decal-web
- Build the site
$ docker run --rm --volume=$PWD:/srv/jekyll:Z \
--volume=$PWD/vendor/bundle:/usr/local/bundle:Z \
jekyll/jekyll:latest jekyll build
The first volume is necessary to provide the build files to Jekyll but the second volume is optional and used to cache Gems. 5. Serve the site on your local machine
$ docker run --rm --volume=$PWD:/srv/jekyll:Z \
--volume=$PWD/vendor/bundle:/usr/local/bundle:Z \
--publish [::1]:4000:4000 jekyll/jekyll:latest jekyll serve
The website should be served on http://localhost:4000 and will reflect changes that you make.
This is method currently does not work.
- SSH into supernova
$ ssh <ocf-username>@supernova.ocf.berkeley.edu
- Clone this repository
$ git clone https://github.com/0xcf/decal-web
- Start the Jekyll server on supernova with:
$ cd decal-web
$ make supernova
The console should ouput a web address (http://supernova.ocf.berkeley.edu:8xxx/
). This web-page will update as you make changes, reload your browser tab to preview the changes.
You will need Ruby 2 to build the site (it has been tested on Ruby2.7.4).
- On Ubuntu 20.04, Ruby can be installed using
sudo apt install ruby-full
. - If using Arch, follow this guide to install it.
- ruby-install is a helpful script- you can run
ruby-install 2.7.4
if Ruby is on the wrong version in your package manager.
You may also need to install Bundler 2.3.10: gem install bundler:2.3.10
- Install Jekyll
$ bundle install
- Start your local Jekyll server. You can also use
make local-dev
.
$ bundle exec jekyll serve
- The console should output a server address (
localhost:8xxx
). Open that address in your browser. - Reload your web browser after making a change to preview its effect.
For more information, refer to Just the Docs.