diff --git a/appliances/network_automation.gns3a b/appliances/network_automation.gns3a new file mode 100644 index 0000000..5481604 --- /dev/null +++ b/appliances/network_automation.gns3a @@ -0,0 +1,18 @@ +{ + "name": "Network Automation", + "category": "guest", + "description": "This container provides the popular tools used for network automation: Netmiko, NAPALM, Pyntc, and Ansible.", + "vendor_name": "GNS3", + "vendor_url": "http://www.gns3.com", + "product_name": "Network Automation", + "registry_version": 3, + "status": "stable", + "maintainer": "GNS3 Team", + "maintainer_email": "developers@gns3.net", + "symbol": "linux_guest.svg", + "docker": { + "adapters": 1, + "image": "gns3/network_automation:latest", + "console_type": "telnet" + } +} diff --git a/docker/network_automation/Dockerfile b/docker/network_automation/Dockerfile new file mode 100644 index 0000000..8b10775 --- /dev/null +++ b/docker/network_automation/Dockerfile @@ -0,0 +1,14 @@ +# docker base image for Netmiko, NAPALM, Pyntc, and Ansible + +FROM ubuntu:xenial + +RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get -y --no-install-recommends install \ + telnet curl openssh-client nano vim-tiny iputils-ping python build-essential libssl-dev libffi-dev \ + python-pip python-setuptools python-dev net-tools ansible \ + && rm -rf /var/lib/apt/lists/* \ + && pip install --upgrade pip \ + && pip install cryptography netmiko napalm pyntc + +VOLUME [ "/root" ] +CMD [ "sh", "-c", "cd; exec bash -i" ] + diff --git a/docker/network_automation/README.md b/docker/network_automation/README.md new file mode 100644 index 0000000..1b3f75a --- /dev/null +++ b/docker/network_automation/README.md @@ -0,0 +1,19 @@ +# Ubuntu - Network Automation Toolbox + +This appliance contains the following network automation tools: + +- Netmiko +- NAPALM +- Pyntc +- Ansible + +The /root folder is mount by default + +## Build and publish the Images + +First the base image has to be created: + +``` +docker build -t gns3/network_automation:latest . +docker push gns3/network_automation:latest (optional) +```