/DockerVI

实现可视化操作docker 远程 api --- 项目进行中

Primary LanguageJavaScript

DockerVI

标签(空格分隔): 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

  1. Demo for show searching image using name cluster

2. **Demo for show the real-time resource usages in Container** ![real-time resource state][4]
4. **Demo for show low-information in container** ![information][8]
5. **Demo for show the create container using image** ![createContainer][5]
6. **Demo for show deleting container** ![deleteContainer][6]
7. **Demo for show Role Based Access Control** ![user-manage][9]
![login][10]

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.