dp-workbench

所属分类:前端开发
开发工具:HTML
文件大小:1063KB
下载次数:0
上传日期:2017-06-07 09:23:58
上 传 者sh-1993
说明:  设备可编程性工作台框架
(Device Programability Workbench Framework)

文件列表:
DOCKER (0, 2017-06-07)
DOCKER\Dockerfile (2054, 2017-06-07)
DOCKER\START-HERE.ipynb (8755, 2017-06-07)
DOCKER\images (0, 2017-06-07)
DOCKER\images\agents.png (181383, 2017-06-07)
DOCKER\images\devnet-logo.png (7644, 2017-06-07)
DOCKER\images\forwardicon.png (600, 2017-06-07)
DOCKER\images\logo.png (4473, 2017-06-07)
DOCKER\images\postman.png (56029, 2017-06-07)
DOCKER\images\snmp-comparison.png (208127, 2017-06-07)
DOCKER\images\topology.png (256675, 2017-06-07)
DOCKER\images\uri-structure.png (66475, 2017-06-07)
DOCKER\images\url-construction.png (138489, 2017-06-07)
DOCKER\images\whyndpmatters.png (81887, 2017-06-07)
DOCKER\resources (0, 2017-06-07)
DOCKER\resources\custom.css (1630, 2017-06-07)
DOCKER\resources\ned-vlan.html (1166633, 2017-06-07)
DOCKER\resources\notebook.json (438, 2017-06-07)
DOCKER\resources\tree.json (82, 2017-06-07)
DOCKER\resources\tree.patch (1107, 2017-06-07)
DOCKER\sections (0, 2017-06-07)
DOCKER\sections\LXML-NETCONF.ipynb (13865, 2017-06-07)
DOCKER\sections\NETCONF.ipynb (30322, 2017-06-07)
DOCKER\sections\RESTCONF.ipynb (18192, 2017-06-07)
DOCKER\sections\WSMA.ipynb (16487, 2017-06-07)
DOCKER\sync-to-lab.sh (273, 2017-06-07)
LICENSE (1081, 2017-06-07)
Makefile (381, 2017-06-07)
Vagrantfile (1483, 2017-06-07)
install.sh (483, 2017-06-07)
manual-netconf.xml (506, 2017-06-07)
rtr1-confg (3624, 2017-06-07)
rtr2-confg (3575, 2017-06-07)

# README.md This repository provides a framework for an interactive device programability learning class. It is intended to be used with individual workstations where each workstation hosts the complete environment consisting of - 1-2 CSR1000V virtual routers running IOS XE 16.3.2 Denali. The platform for the virtual machines is Vagrant using the VirtualBox provider. - Docker Container running Jupyter to serve the content notebooks with Python 3.5 as the kernel. ![overview](https://github.com/CiscoDevNet/dp-workbench/blob/master/DOCKER/images/topology.png) # Building the Environment This is a rough guideline how to bring up / prepare the entire environment. It has a couple of dependencies: - Git client - VirtualBox 5.0.28 - Vagrant 1.8.7 (be aware of [this issue](https://github.com/CiscoDevNet/dp-workbench/blob/master/https://github.com/mitchellh/vagrant/issues/7970)) - Docker 1.12.3 - cdrtools (in particular `mkisofs`) - a build environment (e.g. compiler, make, ...), suggest to use MacPorts or Brew if running on a Mac - Clone the `iso-xrv-x***-vbox` repository [from GitHub](https://github.com/CiscoDevNet/dp-workbench/blob/master/https://github.com/ios-xr/iosxrv-x***-vbox) - IOS XE image from Cisco.com (e.g. [here](https://github.com/CiscoDevNet/dp-workbench/blob/master/https://software.cisco.com/download/type.html?mdfid=2843***978&catid=null), then go to *IOS XE Software* and download the Denali-16.3.2 .iso file in the *Latest* tree branch, ~350MB in size) > *Note:* Version numbers mentioned were the ones that have been used when testing / creating the environment. Upgrading to latest code of the various components might simply work -- ymmv. Recommend to stick with 16.3.2 for the time being, though. Proper RESTCONF support should be included with 16.6. ## Building the Vagrant Box Go to the directory where you cloned the `iso-xrv-x***-vbox` repository. Start the Vagrant box image build by running the following command iosxe_iso2vbox.py -v ~/Downloads/csr1000v-universalk9.16.03.02.iso This will take a while. When done, you need to install the resulting box into Vagrant: vagrant box add --name iosxe csr1000v-universalk9.16.03.02.box (See the output at the end of the script. It has the exact location of the generated box file and also the command to add / replace the Vagrant box file). ## Configure and Start Routers The next steps are required to prepare configuration disks for the routers and then either launch both or only one of them - Clone this repo from GitHub into a new directory - Make sure that the Vagrant box name matches the one configured in the Vagrant file - Ensure you have the required tools installed - run `make` to create the ISO files with the router configurations - Bring up the routers using `vagrant up` (brings up both) or `vagrant up rtr1` to only start rtr1 ## Build the Container Image - Change into the DOCKER directory - Build the container using docker build . -t dp-workbench This will take a while. The resulting image should be around 400MB in size. - Run the container. If you want to make the content read-only then don't provide a volume. Otherwise providing the DOCKER directory as the volume enables to edit the content. Additional build is required to update files in container image if content is changed. docker run -p8888:8888 -v$(pwd):/home/docker/notebooks -d dp-workbench The above command runs the container with a mapped volume. docker run -p8888:8888 --name workbench -d dp-workbench This command runs without a mapped volume, therefore using the content from *within* the container as read-only content. It also assigns the name `workbench` to it to refer to the container. ## Accessing the Notebooks Point your browser on your local machine to `http://localhost:8888`. Everything should be working at this point. ## Docker commands - Run the container without Volume (e.g. readonly files) `docker run -p8888:8888 -d dp-workbench` - Run the container with the Volume (need to build the image again after changing files) `docker run -p8888:8888 -v$(pwd):/home/docker/notebooks -d dp-workbench` - Execute a shell into the container `docker exec -it -u 0 ${CONTAINER_ID} /bin/sh` - Build the image `docker build . -t dp-workbench` - When building in a lab that requires a proxy: `docker build . -t dp-workbench --build-arg http_proxy=$http_proxy`

近期下载者

相关文件


收藏者