gaoyangxiaozhu / DockerVI

实现可视化操作docker 远程 api --departed

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DockerVI

Important: This Project only supports docker v1.10 - v1.11 version and now is deprecated

标签(空格分隔): Docker


docker

Project DockerVI is inspired by the idea of realize the Visible Management for Docker Swarm by using Docker Swarm Remote API . The goal is to provide a beauty and power pure client side implementation, make it is effortless to connect and manage docker swarm.

Current implementation features

  • Role Based Access Control(RBAC)
  • Display the overall survey of cluster.
  • Container:
    • show Container list in swarm cluste.
    • Create, Running, Stop, Delete Container.
    • Look up the low-level information on the container.
    • View the real-time resource usage in Container.
    • View the stdout and stderr logs from the Container.
  • Image:
    • show Image list in swarm cluste.
    • Search, Pull, Delete Image.
    • Create Container using Image.
  • Volume:
    • show Volume list in swarm cluste.
    • Create, Delete Volume.
    • Search volume by using volume name or node name in docker swarm cluster;
    • Look up the low-level detail information about volume.

Some pictures for Demo

  • Demo for show searching image using name

    • cluster
  • Demo for show the real-time resource usages in Container

    • real-time resource state
  • Demo for show low-information in container

    • information
  • Demo for show the create container using image

    • createContainer
  • Demo for show deleting container

    • deleteContainer
  • Demo for show Role Based Access Control

    • user-manage
    • login

Getting Started

DockerVI is self-contained and can be easily deployed via docker-compose(Quick-Start steps below). It mainly consists of four Container Services:

  1. ui: The core part of this project , used for realizing the visual operation of the docker swarm.

  2. monitor: Real-time access the usage of resources in the Container in docker swarm cluster.

  3. mysql: store the resource-usage data for every Container in docker swarm cluster.

  4. mongo store users related information for authentication and authorization. System requirements:
    DockerVI need works with docker 1.10+ and docker-compose 1.6.0+ and 8100,9090 port can be available.

  5. Get the source code:

    $ git clone https://github.com/gaoyangxiaozhu/DockerVI.git
  6. Edit the file Deploy/config.js and monitor/config.js, make necessary configuration changes such as hostname for deploy project and swarm address.

  7. Install DockerVI with the following commands(Need networking for installing the dependencies). Note that the docker-compose process can take a while.

    $ cd Deploy
    $ ./prepare.sh #important
    
    $ docker-compose up

If everything worked properly, you should be able to open a browser to manage your docker swarm using http:<deployed host ip>:8100

Notice: Program does not support the low version of the IE browser, If you use IE to access, please upgrade to IE10+.

Stack

Todo:

  • Authority management
  • Full remote swarm api support
  • using websocket technology for entering the container to carry out the command operation in browser-end
  • Unit tests

License

The DockerVI code is licensed under the MIT license.

About

实现可视化操作docker 远程 api --departed


Languages

Language:JavaScript 78.7%Language:HTML 11.8%Language:CSS 8.3%Language:Shell 0.9%Language:Ruby 0.2%Language:Makefile 0.1%