diff --git a/docs/hero_mdbook_docker.md b/docs/hero_mdbook_docker.md new file mode 100644 index 0000000..88c75cf --- /dev/null +++ b/docs/hero_mdbook_docker.md @@ -0,0 +1,70 @@ +

Deploy mdBook with Hero on Docker

+ +

Table of Contents

+ +- [Introduction](#introduction) +- [Prerequisites](#prerequisites) +- [Steps](#steps) +- [Questions and Feedback](#questions-and-feedback) + +--- + +## Introduction + +We give the basic steps to use Hero on Docker to run and create mdBooks. + +## Prerequisites + +- Docker engine should be installed and running +- You need a git repository to work with (here we use **info_tfgrid**) + - Clone the hero mdbook repo on your local machine and note the path + +## Steps + +In this setup, we will have two temrinal windows running. One window running the **docker run** command and the other running the **docker exec** command. Steps are shown in details. + +Note that you will need to adjust the local path of the git repo and the docker path of the git repo. + +- On a terminal window, start Hero docker + ``` + sudo docker run --name herodocker -v /local/machine/path/to/git/repo:/docker/path/to/git/repo/ ghcr.io/scottyeager/hero:latest + ``` + - In our case, the docker path to the repo is the following + ``` + /root/code/git.ourworld.tf/tfgrid/info_tfgrid/ + ``` +- Open a new terminal window and enter the following. We will be working on this window now. + ``` + sudo docker exec -it herodocker bash + ``` +- Set git globally with a safe directory + ``` + git config --global --add safe.directory /root/code/git.ourworld.tf/tfgrid/info_tfgrid + ``` +- You can now use hero normally, e.g. with **projectinca**: + ``` + hero mdbook -u https://git.ourworld.tf/tfgrid/info_tfgrid/src/branch/main/heroscript/projectinca -gp + ``` +- To view the mdbook on your local browser, run the lines: + ``` + cd ~/hero/var/mdbuild/projectinca/ + mdbook serve -n 0.0.0.0 + ``` +- You should be able to view the rendered book at + ``` + http://172.17.0.2:3000/ + ``` +- To stop the container, exit the current window and run the following: + ``` + sudo docker stop herodocker + ``` + - The first terminal window that was running **docker run** should now have exited Docker. +- To start Hero after having stopped the container, run the following: + ``` + sudo docker start herodocker + ``` + - You can now run the previous line **docker exec** and continue your work. + +## Questions and Feedback + +If you have any questions or feedback, please let us know by either writing a post on the [ThreeFold Forum](https://forum.threefold.io/), or by chatting with us on the [TF Grid Tester Community](https://t.me/threefoldtesting) Telegram channel. \ No newline at end of file