mirror of
https://github.com/GNS3/gns3-registry.git
synced 2024-12-21 05:43:10 +00:00
Merge branch 'GNS3:master' into firewalls
This commit is contained in:
commit
e270c5bfd3
@ -18,14 +18,13 @@ ovs-snmp ovs-snmp --platform=linux/arm64
|
||||
pyats pyats
|
||||
ubuntu:focal ubuntu
|
||||
|
||||
# Tests
|
||||
xeyes xeyes
|
||||
|
||||
#
|
||||
# The following images are not used by any appliance
|
||||
#
|
||||
|
||||
# Replaced by https://github.com/adosztal/gns3-containers
|
||||
#network_automation network_automation
|
||||
#python-go-perl-php python-go-perl-php
|
||||
|
||||
# AJ Nouri
|
||||
#endhost endhost
|
||||
#haproxy haproxy
|
||||
@ -35,7 +34,3 @@ ubuntu:focal ubuntu
|
||||
# GNS3 Developers
|
||||
#dhcp dhcp
|
||||
#snmpsimulator snmpsimulator
|
||||
|
||||
# Tests
|
||||
#iou iou
|
||||
#xeyes xeyes
|
||||
|
4
docker/iou/.gitignore
vendored
4
docker/iou/.gitignore
vendored
@ -1,4 +0,0 @@
|
||||
iou.bin
|
||||
iourc.txt
|
||||
NETMAP
|
||||
iouyap.ini
|
@ -1,31 +0,0 @@
|
||||
FROM ubuntu:14.04
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
|
||||
RUN dpkg --add-architecture i386
|
||||
|
||||
RUN apt-get update
|
||||
|
||||
RUN apt-get install python3
|
||||
|
||||
RUN apt-get install -y lib32z1
|
||||
RUN apt-get install -y libssl1.0.0
|
||||
RUN apt-get install -y 'libssl1.0.0:i386'
|
||||
RUN ln -s /lib/i386-linux-gnu/libcrypto.so.1.0.0 /lib/i386-linux-gnu/libcrypto.so.4
|
||||
|
||||
VOLUME /data
|
||||
|
||||
ADD iouyap /bin
|
||||
RUN chmod 700 /bin/iouyap
|
||||
|
||||
RUN mkdir /images
|
||||
ADD iourc.txt /images
|
||||
ADD iou.bin /images
|
||||
RUN chmod 700 /images/iou.bin
|
||||
|
||||
ADD boot.sh /
|
||||
ADD netmap.py /
|
||||
|
||||
ENV HOSTNAME=gns3vm
|
||||
|
||||
CMD /bin/bash ./boot.sh
|
@ -1,19 +0,0 @@
|
||||
Docker IOU
|
||||
----------
|
||||
|
||||
**Warning not working for the moment**
|
||||
|
||||
This repository is a trial to make IOU work inside a docker container.
|
||||
If it's work with GNS3 1.5 docker support it can allow running IOU
|
||||
on any computer supporting Docker without dependencies issues.
|
||||
|
||||
|
||||
Building the container
|
||||
#######################
|
||||
|
||||
* Put in the directory an IOU image and name it iou.bin
|
||||
* Put in the directory a valid iourc.txt file
|
||||
|
||||
.. code:: bash
|
||||
|
||||
docker build -t iou
|
@ -1,14 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
export IOURC=/images/iourc.txt
|
||||
|
||||
dd if=/dev/zero bs=4 count=1 of=/etc/hostid
|
||||
|
||||
cd /data
|
||||
python3 /netmap.py
|
||||
|
||||
/bin/iouyap 513 &
|
||||
|
||||
|
||||
/images/iou.bin 1 || /bin/bash -i
|
||||
|
Binary file not shown.
@ -1,64 +0,0 @@
|
||||
#!/usr/bin/env python
|
||||
#
|
||||
# Copyright (C) 2016 GNS3 Technologies Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import configparser
|
||||
|
||||
bays = 16
|
||||
units = 4
|
||||
ethernet_adapters = 0
|
||||
|
||||
with open("/proc/net/dev") as f:
|
||||
for line in f.readlines():
|
||||
if "eth" in line:
|
||||
ethernet_adapters += 1
|
||||
|
||||
|
||||
with open("NETMAP", "w", encoding="utf-8") as f:
|
||||
ethernet_id = 0
|
||||
for bay in range(0, bays):
|
||||
for unit in range(0, units):
|
||||
if ethernet_id >= ethernet_adapters:
|
||||
break
|
||||
f.write("{iouyap_id}:{bay}/{unit}{iou_id:>5d}:{bay}/{unit}\n".format(iouyap_id=str(1 + 512),
|
||||
bay=bay,
|
||||
unit=unit,
|
||||
iou_id=1))
|
||||
ethernet_id += 1
|
||||
|
||||
|
||||
|
||||
iouyap_ini = "iouyap.ini"
|
||||
|
||||
config = configparser.ConfigParser()
|
||||
config["default"] = {"netmap": "NETMAP",
|
||||
"base_port": "49000"}
|
||||
|
||||
ethernet_id = 0
|
||||
for bay_id in range(0, bays):
|
||||
for unit_id in range(0, units):
|
||||
if ethernet_id >= ethernet_adapters:
|
||||
break
|
||||
connection = {"eth_dev": "eth{ethernet_id}".format(ethernet_id=ethernet_id)}
|
||||
ethernet_id += 1
|
||||
|
||||
interface = "{iouyap_id}:{bay}/{unit}".format(iouyap_id=str(1 + 512), bay=bay_id, unit=unit_id)
|
||||
config[interface] = connection
|
||||
unit_id += 1
|
||||
bay_id += 1
|
||||
|
||||
with open(iouyap_ini, "w", encoding="utf-8") as config_file:
|
||||
config.write(config_file)
|
@ -1,22 +0,0 @@
|
||||
# docker base image for Netmiko, NAPALM, Pyntc, and Ansible
|
||||
|
||||
FROM ubuntu:bionic
|
||||
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get -y --no-install-recommends \
|
||||
install telnet curl openssh-client nano vim-tiny iputils-ping build-essential \
|
||||
libssl-dev libffi-dev python3-pip python3-dev python3-setuptools \
|
||||
net-tools python3 software-properties-common \
|
||||
&& apt-add-repository -y ppa:ansible/ansible-2.8 \
|
||||
&& apt-get update && apt-get -y --no-install-recommends install ansible \
|
||||
&& rm -rf /var/lib/apt/lists/* \
|
||||
&& pip3 install --no-cache-dir wheel \
|
||||
&& pip3 install --no-cache-dir cryptography netmiko napalm pyntc \
|
||||
&& pip3 install --no-cache-dir --upgrade paramiko && mkdir /scripts \
|
||||
&& mkdir /root/.ssh/ \
|
||||
&& echo "KexAlgorithms diffie-hellman-group1-sha1,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group14-sha1" > /root/.ssh/config \
|
||||
&& echo "Ciphers 3des-cbc,blowfish-cbc,aes128-cbc,aes128-ctr,aes256-ctr" >> /root/.ssh/config \
|
||||
&& chown -R root /root/.ssh/
|
||||
|
||||
VOLUME [ "/root","/usr", "/scripts" ]
|
||||
CMD [ "sh", "-c", "cd; exec bash -i" ]
|
||||
|
@ -1,19 +0,0 @@
|
||||
# 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)
|
||||
```
|
@ -1,20 +0,0 @@
|
||||
# docker base image for basic programming tools
|
||||
|
||||
FROM ubuntu:xenial
|
||||
|
||||
RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get -y --no-install-recommends install \
|
||||
net-tools telnet traceroute openssh-client nano vim-tiny iputils-ping php php-ldap php-json \
|
||||
php-mail php-mcrypt php-mysql php-pgsql php-snmp php-sqlite3 php-ssh2 php-xmlrpc php7.0 \
|
||||
php7.0-ldap php7.0-mysql php7.0-pgsql php7.0-snmp php7.0-sqlite3 php7.0-xmlrpc \
|
||||
golang-go golang-github-go-sql-driver-mysql-dev golang-github-mattn-go-sqlite3-dev \
|
||||
golang-github-go-ldap-ldap-dev golang-github-kolo-xmlrpc-dev \
|
||||
python python3 python-pymysql python3-pymysql python-pygresql python3-postgresql \
|
||||
python-pysnmp4 python3-pysnmp4 python-ldap3 python3-ldap3 python-paramiko python3-paramiko \
|
||||
python-mailer python3-aioxmlrpc \
|
||||
perl perl-modules-5.22 libdbd-mysql-perl libdbd-sqlite3-perl libsnmp-session-perl \
|
||||
libdbd-ldap-perl libnet-ssh2-perl\
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
VOLUME [ "/root" ]
|
||||
CMD [ "sh", "-c", "cd; exec bash -i" ]
|
||||
|
@ -1,24 +0,0 @@
|
||||
# Ubuntu - Programming Toolbox
|
||||
|
||||
This appliance contains the following networking tools:
|
||||
|
||||
- net-tools (basic network administration tools)
|
||||
- ping
|
||||
- ssh client
|
||||
- telnet
|
||||
- Python 2
|
||||
- Python 3
|
||||
- Perl
|
||||
- Go
|
||||
- PHP
|
||||
|
||||
The /root folder is mounted by default
|
||||
|
||||
## Build and publish the Images
|
||||
|
||||
First the base image has to be created:
|
||||
|
||||
```
|
||||
docker build -t gns3/python-go-perl-php:latest .
|
||||
docker push gns3/python-go-perl-php:latest (optional)
|
||||
```
|
Loading…
Reference in New Issue
Block a user