Example GitBook website using GitLab Pages.
Learn more about GitLab Pages at https://pages.gitlab.io and the official documentation https://docs.gitlab.com/ce/user/project/pages/.
Table of Contents generated with DocToc
GitLab CI
This project's static Pages are built by GitLab CI, following the steps
defined in .gitlab-ci.yml
:
# requiring the environment of NodeJS 8.9.x LTS (carbon)
image: node:8.9
# add 'node_modules' to cache for speeding up builds
cache:
paths:
- node_modules/ # Node modules and dependencies
before_script:
- npm install gitbook-cli -g # install gitbook
- gitbook fetch latest # fetch latest stable version
- gitbook install # add any requested plugins in book.json
#- gitbook fetch pre # fetch latest pre-release version
#- gitbook fetch 2.6.7 # fetch specific version
# the 'pages' job will deploy and build your site to the 'public' path
pages:
stage: deploy
script:
- gitbook build . public # build to public path
artifacts:
paths:
- public
only:
- master # this job will affect only the 'master' branch
Building locally
To work locally with this project, you'll have to follow the steps below:
- Fork, clone or download this project
- Install GitBook
npm install gitbook-cli -g
- Fetch GitBook's latest stable version
gitbook fetch latest
- Preview your project:
gitbook serve
- Add content
- Generate the website:
gitbook build
(optional) - Push your changes to the master branch:
git push
Read more at GitBook's documentation.
GitLab User or Group Pages
To use this project as your user/group website, you will need one additional
step: just rename your project to namespace.gitlab.io
, where namespace
is
your username
or groupname
. This can be done by navigating to your
project's Settings.
Read more about user/group Pages and project Pages.
Did you fork this project?
If you forked this project for your own use, please go to your project's Settings and remove the forking relationship, which won't be necessary unless you want to contribute back to the upstream project.
Troubleshooting
CSS is missing! That means two things:
Either that you have wrongly set up the CSS URL in your templates, or your static generator has a configuration option that needs to be explicitly set in order to serve static assets under a relative URL.
Forked from @virtuacreative