gns3-server


Namegns3-server JSON
Version 2.2.46 PyPI version JSON
download
home_pagehttp://github.com/GNS3/gns3-server
SummaryGNS3 server
upload_time2024-02-26 09:06:11
maintainer
docs_urlhttps://pythonhosted.org/gns3-server/
author
requires_python>=3.7
licenseGNU General Public License v3 (GPLv3)
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            GNS3-server
===========

[![image](https://github.com/GNS3/gns3-server/workflows/testing/badge.svg)](https://github.com/GNS3/gns3-server/actions?query=workflow%3Atesting)

[![image](https://img.shields.io/pypi/v/gns3-server.svg)](https://pypi.python.org/pypi/gns3-server)

[![image](https://snyk.io/test/github/GNS3/gns3-server/badge.svg)](https://snyk.io/test/github/GNS3/gns3-server)

This is the GNS3 server repository.

The GNS3 server manages emulators such as Dynamips, VirtualBox or
Qemu/KVM. Clients like the [GNS3 GUI](https://github.com/GNS3/gns3-gui/)
and the [GNS3 Web UI](https://github.com/GNS3/gns3-web-ui) control the
server using an HTTP REST API.

Software dependencies
---------------------

In addition of Python dependencies listed in a section below, other
software may be required, recommended or optional.

-   [uBridge](https://github.com/GNS3/ubridge/) is required, it
    interconnects the nodes.
-   [Dynamips](https://github.com/GNS3/dynamips/) is required for
    running IOS routers (using real IOS images) as well as the internal
    switches and hubs.
-   [VPCS](https://github.com/GNS3/vpcs/) is recommended, it is a
    builtin node simulating a very simple computer to perform
    connectitivy tests using ping, traceroute etc.
-   Qemu is strongly recommended on Linux, as most node types are based
    on Qemu, for example Cisco IOSv and Arista vEOS.
-   libvirt is recommended (Linux only), as it\'s needed for the NAT
    cloud.
-   Docker is optional (Linux only), some nodes are based on Docker.
-   mtools is recommended to support data transfer to/from QEMU VMs
    using virtual disks.
-   i386-libraries of libc and libcrypto are optional (Linux only), they
    are only needed to run IOU based nodes.

### Docker support

Docker support needs the script program (bsdutils or
util-linux package), when running a docker VM and a static
busybox during installation (python3 setup.py install / pip3 install /
package creation).

Branches
--------

### master

master is the next stable release, you can test it in your day to day
activities. Bug fixes or small improvements pull requests go here.

### 2.x (2.3 for example)

Next major release

*Never* use this branch for production. Pull requests for major new
features go here.

Linux
-----

GNS3 is perhaps packaged for your distribution:

-   Gentoo: <https://packages.gentoo.org/package/net-misc/gns3-server>
-   Alpine:
    <https://pkgs.alpinelinux.org/package/v3.10/community/x86_64/gns3-server>
-   NixOS:
    <https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=gns3-server>

Linux (Debian based)
--------------------

The following instructions have been tested with Ubuntu and Mint. You
must be connected to the Internet in order to install the dependencies.

Dependencies:

-   Python 3.6, setuptools and the ones listed
    [here](https://github.com/GNS3/gns3-server/blob/master/requirements.txt)

The following commands will install some of these dependencies:

``` {.bash}
sudo apt-get install python3-setuptools python3-pip
```

Finally, these commands will install the server as well as the rest of
the dependencies:

``` {.bash}
cd gns3-server-master
python3 -m pip install -r requirements.txt
python3 -m pip install .
gns3server
```

To run tests use:

``` {.bash}
python3 -m pytest tests
```

### Docker container

For development, you can run the GNS3 server in a container

``` {.bash}
bash scripts/docker_dev_server.sh
```

### Run as daemon (Unix only)

You will find init sample scripts for various systems inside the init
directory.

Useful options:

-   `--daemon`: start process as a daemon
-   `--log logfile`: store output in a logfile
-   `--pid pidfile`: store the pid of the running process in a file and
    prevent double execution

All init scripts require the creation of a GNS3 user. You can change it
to another user.

``` {.bash}
sudo adduser gns3
```

upstart
-------

For ubuntu < 15.04

You need to copy init/gns3.conf.upstart to /etc/init/gns3.conf

``` {.bash}
sudo chown root /etc/init/gns3.conf
sudo service gns3 start
```

systemd
-------

You need to copy init/gns3.service.systemd to
/lib/systemd/system/gns3.service

``` {.bash}
sudo chown root /lib/systemd/system/gns3.service
sudo systemctl start gns3
```

Windows
-------

Please use our [all-in-one
installer](https://community.gns3.com/software/download) to install the
stable build.

If you install via source you need to first install:

-   Python (3.3 or above) - <https://www.python.org/downloads/windows/>
-   Pywin32 - <https://sourceforge.net/projects/pywin32/>

Then you can call

``` {.bash}
python setup.py install
```

to install the remaining dependencies.

To run the tests, you also need to call

``` {.bash}
pip install pytest pytest-capturelog
```

before actually running the tests with

``` {.bash}
python setup.py test
```

or with

``` {.bash}
py.test -v
```

Mac OS X
--------

Please use our DMG package for a simple installation.

If you want to test the current git version or contribute to the
project, you can follow these instructions with virtualenvwrapper:
<http://virtualenvwrapper.readthedocs.org/> and homebrew:
<http://brew.sh/>.

``` {.bash}
brew install python3
mkvirtualenv gns3-server --python=/usr/local/bin/python3.5
python3 setup.py install
gns3server
```

SSL
---

If you want enable SSL support on GNS3 you can generate a self signed
certificate:

``` {.bash}
bash gns3server/cert_utils/create_cert.sh
```

This command will put the files in \~/.config/GNS3/ssl

After you can start the server in SSL mode with:

``` {.bash}
python gns3server/main.py --certfile ~/.config/GNS3/ssl/server.cert --certkey ~/.config/GNS3/ssl/server.key --ssl
```

Or in your gns3\_server.conf by adding in the Server section:

``` {.ini}
[Server]
certfile=/Users/noplay/.config/GNS3/ssl/server.cert
certkey=/Users/noplay/.config/GNS3/ssl/server.key
ssl=True
```

### Running tests

Just run:

``` {.bash}
py.test -vv
```

If you want test coverage:

``` {.bash}
py.test --cov-report term-missing --cov=gns3server
```

Security issues
---------------

Please contact us using contact form available here:
<http://docs.gns3.com/1ON9JBXSeR7Nt2-Qum2o3ZX0GU86BZwlmNSUgvmqNWGY/index.html>



            

Raw data

            {
    "_id": null,
    "home_page": "http://github.com/GNS3/gns3-server",
    "name": "gns3-server",
    "maintainer": "",
    "docs_url": "https://pythonhosted.org/gns3-server/",
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "",
    "author": "",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/b0/dd/50920cd9cf1663c6f3f30c1ee1874123a566443624d304fc7d975993b787/gns3-server-2.2.46.tar.gz",
    "platform": "any",
    "description": "GNS3-server\n===========\n\n[![image](https://github.com/GNS3/gns3-server/workflows/testing/badge.svg)](https://github.com/GNS3/gns3-server/actions?query=workflow%3Atesting)\n\n[![image](https://img.shields.io/pypi/v/gns3-server.svg)](https://pypi.python.org/pypi/gns3-server)\n\n[![image](https://snyk.io/test/github/GNS3/gns3-server/badge.svg)](https://snyk.io/test/github/GNS3/gns3-server)\n\nThis is the GNS3 server repository.\n\nThe GNS3 server manages emulators such as Dynamips, VirtualBox or\nQemu/KVM. Clients like the [GNS3 GUI](https://github.com/GNS3/gns3-gui/)\nand the [GNS3 Web UI](https://github.com/GNS3/gns3-web-ui) control the\nserver using an HTTP REST API.\n\nSoftware dependencies\n---------------------\n\nIn addition of Python dependencies listed in a section below, other\nsoftware may be required, recommended or optional.\n\n-   [uBridge](https://github.com/GNS3/ubridge/) is required, it\n    interconnects the nodes.\n-   [Dynamips](https://github.com/GNS3/dynamips/) is required for\n    running IOS routers (using real IOS images) as well as the internal\n    switches and hubs.\n-   [VPCS](https://github.com/GNS3/vpcs/) is recommended, it is a\n    builtin node simulating a very simple computer to perform\n    connectitivy tests using ping, traceroute etc.\n-   Qemu is strongly recommended on Linux, as most node types are based\n    on Qemu, for example Cisco IOSv and Arista vEOS.\n-   libvirt is recommended (Linux only), as it\\'s needed for the NAT\n    cloud.\n-   Docker is optional (Linux only), some nodes are based on Docker.\n-   mtools is recommended to support data transfer to/from QEMU VMs\n    using virtual disks.\n-   i386-libraries of libc and libcrypto are optional (Linux only), they\n    are only needed to run IOU based nodes.\n\n### Docker support\n\nDocker support needs the script program (bsdutils or\nutil-linux package), when running a docker VM and a static\nbusybox during installation (python3 setup.py install / pip3 install /\npackage creation).\n\nBranches\n--------\n\n### master\n\nmaster is the next stable release, you can test it in your day to day\nactivities. Bug fixes or small improvements pull requests go here.\n\n### 2.x (2.3 for example)\n\nNext major release\n\n*Never* use this branch for production. Pull requests for major new\nfeatures go here.\n\nLinux\n-----\n\nGNS3 is perhaps packaged for your distribution:\n\n-   Gentoo: <https://packages.gentoo.org/package/net-misc/gns3-server>\n-   Alpine:\n    <https://pkgs.alpinelinux.org/package/v3.10/community/x86_64/gns3-server>\n-   NixOS:\n    <https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=gns3-server>\n\nLinux (Debian based)\n--------------------\n\nThe following instructions have been tested with Ubuntu and Mint. You\nmust be connected to the Internet in order to install the dependencies.\n\nDependencies:\n\n-   Python 3.6, setuptools and the ones listed\n    [here](https://github.com/GNS3/gns3-server/blob/master/requirements.txt)\n\nThe following commands will install some of these dependencies:\n\n``` {.bash}\nsudo apt-get install python3-setuptools python3-pip\n```\n\nFinally, these commands will install the server as well as the rest of\nthe dependencies:\n\n``` {.bash}\ncd gns3-server-master\npython3 -m pip install -r requirements.txt\npython3 -m pip install .\ngns3server\n```\n\nTo run tests use:\n\n``` {.bash}\npython3 -m pytest tests\n```\n\n### Docker container\n\nFor development, you can run the GNS3 server in a container\n\n``` {.bash}\nbash scripts/docker_dev_server.sh\n```\n\n### Run as daemon (Unix only)\n\nYou will find init sample scripts for various systems inside the init\ndirectory.\n\nUseful options:\n\n-   `--daemon`: start process as a daemon\n-   `--log logfile`: store output in a logfile\n-   `--pid pidfile`: store the pid of the running process in a file and\n    prevent double execution\n\nAll init scripts require the creation of a GNS3 user. You can change it\nto another user.\n\n``` {.bash}\nsudo adduser gns3\n```\n\nupstart\n-------\n\nFor ubuntu < 15.04\n\nYou need to copy init/gns3.conf.upstart to /etc/init/gns3.conf\n\n``` {.bash}\nsudo chown root /etc/init/gns3.conf\nsudo service gns3 start\n```\n\nsystemd\n-------\n\nYou need to copy init/gns3.service.systemd to\n/lib/systemd/system/gns3.service\n\n``` {.bash}\nsudo chown root /lib/systemd/system/gns3.service\nsudo systemctl start gns3\n```\n\nWindows\n-------\n\nPlease use our [all-in-one\ninstaller](https://community.gns3.com/software/download) to install the\nstable build.\n\nIf you install via source you need to first install:\n\n-   Python (3.3 or above) - <https://www.python.org/downloads/windows/>\n-   Pywin32 - <https://sourceforge.net/projects/pywin32/>\n\nThen you can call\n\n``` {.bash}\npython setup.py install\n```\n\nto install the remaining dependencies.\n\nTo run the tests, you also need to call\n\n``` {.bash}\npip install pytest pytest-capturelog\n```\n\nbefore actually running the tests with\n\n``` {.bash}\npython setup.py test\n```\n\nor with\n\n``` {.bash}\npy.test -v\n```\n\nMac OS X\n--------\n\nPlease use our DMG package for a simple installation.\n\nIf you want to test the current git version or contribute to the\nproject, you can follow these instructions with virtualenvwrapper:\n<http://virtualenvwrapper.readthedocs.org/> and homebrew:\n<http://brew.sh/>.\n\n``` {.bash}\nbrew install python3\nmkvirtualenv gns3-server --python=/usr/local/bin/python3.5\npython3 setup.py install\ngns3server\n```\n\nSSL\n---\n\nIf you want enable SSL support on GNS3 you can generate a self signed\ncertificate:\n\n``` {.bash}\nbash gns3server/cert_utils/create_cert.sh\n```\n\nThis command will put the files in \\~/.config/GNS3/ssl\n\nAfter you can start the server in SSL mode with:\n\n``` {.bash}\npython gns3server/main.py --certfile ~/.config/GNS3/ssl/server.cert --certkey ~/.config/GNS3/ssl/server.key --ssl\n```\n\nOr in your gns3\\_server.conf by adding in the Server section:\n\n``` {.ini}\n[Server]\ncertfile=/Users/noplay/.config/GNS3/ssl/server.cert\ncertkey=/Users/noplay/.config/GNS3/ssl/server.key\nssl=True\n```\n\n### Running tests\n\nJust run:\n\n``` {.bash}\npy.test -vv\n```\n\nIf you want test coverage:\n\n``` {.bash}\npy.test --cov-report term-missing --cov=gns3server\n```\n\nSecurity issues\n---------------\n\nPlease contact us using contact form available here:\n<http://docs.gns3.com/1ON9JBXSeR7Nt2-Qum2o3ZX0GU86BZwlmNSUgvmqNWGY/index.html>\n\n\n",
    "bugtrack_url": null,
    "license": "GNU General Public License v3 (GPLv3)",
    "summary": "GNS3 server",
    "version": "2.2.46",
    "project_urls": {
        "Homepage": "http://github.com/GNS3/gns3-server"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b0dd50920cd9cf1663c6f3f30c1ee1874123a566443624d304fc7d975993b787",
                "md5": "d9b540d61d30900b369058fdb32911c0",
                "sha256": "efc1cab0edd8acf21fec623fd13ee8c82535685dad131b0f3bd50485b0a0aca8"
            },
            "downloads": -1,
            "filename": "gns3-server-2.2.46.tar.gz",
            "has_sig": false,
            "md5_digest": "d9b540d61d30900b369058fdb32911c0",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 10494219,
            "upload_time": "2024-02-26T09:06:11",
            "upload_time_iso_8601": "2024-02-26T09:06:11.802633Z",
            "url": "https://files.pythonhosted.org/packages/b0/dd/50920cd9cf1663c6f3f30c1ee1874123a566443624d304fc7d975993b787/gns3-server-2.2.46.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-26 09:06:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "GNS3",
    "github_project": "gns3-server",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "appveyor": true,
    "requirements": [],
    "lcname": "gns3-server"
}
        
Elapsed time: 0.37127s