Giter Site home page Giter Site logo

pottava / docker-webui Goto Github PK

View Code? Open in Web Editor NEW
147.0 15.0 34.0 1.6 MB

Dockerized docker-webui ->

Home Page: https://hub.docker.com/r/pottava/docker-webui/

License: MIT License

CSS 1.64% JavaScript 89.79% Go 8.57%
docker docker-container monitor-logs stats

docker-webui's Introduction

Docker Web-UI

Supported tags and respective Dockerfile links:
・latest (production/Dockerfile)

Description

A web user-interface for docker.
(日本語はこちら)

Features

handling docker containers

  • search containers (by status, labels, query strings)
  • inspect, top, stats, logs, diff, rename, commit
  • start, stop, restart, kill, rm
  • search its image

tailing containers' logs

  • filter target containers by labels
  • monitoring logs (10~200 lines each) every specified seconds

watch containers' statistics

  • filter target containers by labels
  • display CPU & memory on running containers by charts
  • details on the bottom table

watch specified container's logs & stats

  • monitoring logs (10~200 lines each) every specified seconds
  • you can check CPUs & memorys at the same time

handling docker images

  • search images (by labels, query strings)
  • docker pull a new image
  • docker pull the same image again
  • inspect, history, tag, rmi

Usage

1. Run the application

as a docker-compose service

monit:
  image: pottava/docker-webui
  ports:
    - "9000:9000"
  volumes:
    - "${DOCKER_CERT_PATH}:/etc/docker-compose/cert"
  environment:
    - DOCKER_HOST
    - DOCKER_CERT_PATH=/etc/docker-compose/cert
    - APP_LABEL_OVERRIDE_NAMES=com.docker.compose.service
    - APP_LABEL_FILTERS=com.docker.compose.service

or as a simple docker container

$ docker run -p 9000:9000 --rm -v /var/run/docker.sock:/var/run/docker.sock pottava/docker-webui
$ docker run -p 9000:9000 --rm -e DOCKER_HOST -e DOCKER_CERT_PATH=/etc/docker-compose/cert -v $DOCKER_CERT_PATH:/etc/docker-compose/cert pottava/docker-webui

or as a go binary

$ go get github.com/pottava/docker-webui
$ docker-webui

2. Access to the following URL

http://localhost:9000/

Startup Options

You can set environment variables or use config.json to configure the application.

Option (config.json) Environment Variables Description Default
Name APP_NAME name of this application 'docker web-ui'
Port APP_PORT port the app is listening on 9000
  CONFIG_FILE_PATH path of config.json '/etc/docker-webui/config.json'
ViewOnly APP_VIEW_ONLY if you set true, you cannot change docker state false
LogLevel APP_LOG_LEVEL 1:fatal, 2:err, 3:warn, 4:info, 5:debug, 6:trace 4
LabelOverrideNames APP_LABEL_OVERRIDE_NAMES override containers name by its label value
LabelFilters APP_LABEL_FILTERS labels for filtering containers & images ['all']
DockerEndpoints DOCKER_HOST docker API endpoints (tcp or socket) [unix:///var/run/docker.sock]
DockerCertPath DOCKER_CERT_PATH set certifications' absolute path on the host ['']
DockerPullBeginTimeout DOCKER_PULL_BEGIN_TIMEOUT timeout of docker pull to start 3 * time.Minute
DockerPullTimeout DOCKER_PULL_TIMEOUT timeout of docker pull 2 * time.Hour
DockerStatTimeout DOCKER_STAT_TIMEOUT timeout of docker stat 5 * time.Second
DockerStartTimeout DOCKER_START_TIMEOUT timeout of docker start 10 * time.Second
DockerStopTimeout DOCKER_STOP_TIMEOUT timeout of docker stop 10 * time.Second
DockerRestartTimeout DOCKER_RESTART_TIMEOUT timeout of docker restart 10 * time.Second
DockerKillTimeout DOCKER_KILL_TIMEOUT timeout of docker kill 10 * time.Second
DockerRmTimeout DOCKER_RM_TIMEOUT timeout of docker rm 5 * time.Minute
DockerCommitTimeout DOCKER_COMMIT_TIMEOUT timeout of docker commit 30 * time.Second
StaticFileHost APP_STATIC_FILE_HOST host name which provides static files
StaticFilePath APP_STATIC_FILE_PATH static file path on the host '$GOPATH + /src/github.com/pottava/docker-webui/app'
PathPrefix APP_PATH_PREFIX URL Path prefix for path based routing
PreventSelfStop APP_PREVENT_SELF_STOP prevent to stop this app itself if you set true true
HiddenContainers APP_HIDDEN_CONTAINERS hide specified containers if you like []

Contribution

  1. Fork (https://github.com/pottava/docker-webui/fork)
  2. Create a feature branch
  3. Commit your changes
  4. Rebase your local changes against the master branch
  5. Create new Pull Request

Copyright and license

Code released under the MIT license.

docker-webui's People

Contributors

pottava avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-webui's Issues

How to run on different port

Hey, first of all thanks for this great exentsion to docker!

Currently I'm trying to run the application with the following command:

docker run -p 9000:9000 --rm -v /var/run/docker.sock:/var/run/docker.sock pottava/docker-webui

My problem is that on my server I'm using nginx as a reverse proxy to link request from port 80 to an internal port. I'm also using redis, which I'm running on port 9000. So i have to change the port for the docker-webui to something different, because I cannot change the redis port.

I tried it with

docker run -p 9001:9001 --rm -v /var/run/docker.sock:/var/run/docker.sock pottava/docker-webui

but the app is still listening on port 9000. Any idea on how to configure this?

Maximum number of containers displayed 100

Hi, I have installed docker-webui in our environment. On the clients tab it identifies the client correctly and the number of containers running in that client, for example 189. But in the containers tab, it only lists 100 containers. How can I get it to list all 189 containers?

I have tried to hide the containers I don't need monitored, but then the clients tab only displays 100 - the hidden ones, say 70 for example. Is this by design?

None of your environment settings, mention anywhere, where to set the limit of displayed containers.
Help would be appreciated, thanks

Marek

Is it possible to start this application behind reverse proxy at the specific path?

I have nginx frontend that publish few internal infrastructure backends under specific locations.

i.e. jenkins -> /jenkins
     pormeteus -> /prometeus
     and so on

I want to publish docker-webui under /docker-webui location. Very original, isn`t it?

For such behaviour docker-webui must use only relative paths or have special option that allow to set prefix. I didn't find any notes about prefix option within code. Is docker-webui support relative path behaviour?

No information displayed, nothing in logs

Hi. I'm trying to use this dashboard, but I can't get it to work. It says "0 container", "0 image", "No Data Available", etc.

Even with APP_LOG_LEVEL=6, I don't see anything after "listening on port 9000" in logs.

Can you help?

Multiline Errors in logs

I was wondering if the application could take in a regex string or a parameter for how it should separate up the log file. Instead of just line by line, have it abide by a regex string.

Use case is I have a tomcat docker container and if the application spits out a java error each part of the error is separated into a new log entry in the UI. Where is would be nice if the entire error was just one entry (since it's one message written to stderr anyway)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.