This branch contains the content and site generator of the https://linuxcontainers.org website. Backend code for Try it part is located at https://github.com/lxc/lxd-demo-server
Fixes, new content and translations are greatly appreciated. Read our contributing guidelines for details.
Take a look at the open issues on Github, to see where you could help.
For example:
To generate & run a local copy of the website, follow the instructions below.
Install the following software (naming may depends on your distribution):
- man2html-base
- python3 (>= 3.3)
- python3-bs4
- python3-jinja2
- python3-markdown (>= 3.3.4)
- python3-pygments
- pymdown-extensions
git clone https://github.com/lxc/linuxcontainers.org
Note: The folder downloads
is quite big, so you can skip that folder by using git sparse-checkout & partial clones
(The only exception is, when you work on the downloads page).
As a replacement for the missing downloads
folder you need to create the following empty folders, before generating the website (otherwise the generator shows an error):
downloads/cgmanager/
downloads/distrobuilder/
downloads/lxc/
downloads/lxcfs/
downloads/lxd/
All steps for creating a sparse checkout
git clone --filter=blob:none --no-checkout [email protected]:lxc/linuxcontainers.org.git
cd linuxcontainers.org/
git sparse-checkout set --cone
echo -e '/*\n!downloads' >> .git/info/sparse-checkout
git checkout master
git pull
mkdir -p downloads/cgmanager/
mkdir -p downloads/distrobuilder/
mkdir -p downloads/lxc/
mkdir -p downloads/lxcfs/
mkdir -p downloads/lxd/
./generate
After generating the website(above), run these commands(Ubuntu-specific):
cd output
python3 -m http.server 8777
Now you can access the website in your browser by using your local IP address and port:
127.0.0.1:8777
Inside the container:
Install the dependencies, clone the repo and generate the website (same as above).
After generating the website, run these commands(Ubuntu-specific):
cd output
python3 -m http.server 8777
On the host:
You can now navigate to the site (in a browser of your choice) with the container's IP address, for example:
185.5.3.12:8777
Download the HTML of the LXD documentation from the latest workflow run at https://github.com/lxc/lxd/actions/workflows/sphinx.yml. Look for an artifact with filename documentation.zip
. Unzip it into the local output folder:
mkdir -p linuxcontainers.org/output/lxd/docs/master
unzip documentation.zip -d linuxcontainers.org/output/lxd/docs/master/
You must repeat this process after ./generate
runs, because it cleans the output folder.
Download the man pages from jenkins https://jenkins.linuxcontainers.org/job/lxc-build-tarballs/ and unzip them into the respective folder. For LXC:
tar xvf manpages.tar.gz -C linuxcontainers.org/manpages/lxc/
Ensure that man2html
is installed. ./generate
calls this tool and injects the main menu on top.
To install man2html
:
apt install man2html
Bug reports, requests and ideas regarding the website can be filed at https://github.com/lxc/linuxcontainers.org/issues/new