DockerUI => UI For Docker
parent
02d4161ddd
commit
1b206f223f
|
@ -3,4 +3,4 @@ FROM scratch
|
||||||
COPY dist /
|
COPY dist /
|
||||||
|
|
||||||
EXPOSE 9000
|
EXPOSE 9000
|
||||||
ENTRYPOINT ["/dockerui"]
|
ENTRYPOINT ["/ui-for-docker"]
|
||||||
|
|
2
LICENSE
2
LICENSE
|
@ -1,4 +1,4 @@
|
||||||
DockerUI: Copyright (c) 2013-2014 Michael Crosby. crosbymichael.com
|
UI For Docker: Copyright (c) 2013-2016 Michael Crosby (crosbymichael.com), Kevan Ahlquist (kevanahlquist.com)
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
|
39
README.md
39
README.md
|
@ -1,7 +1,7 @@
|
||||||
## DockerUI
|
## UI For Docker
|
||||||
|
|
||||||
![Containers](/containers.png)
|
![Containers](/containers.png)
|
||||||
DockerUI is a web interface for the Docker Remote API. The goal is to provide a pure client side implementation so it is effortless to connect and manage docker. This project is not complete and is still under heavy development.
|
UI For Docker is a web interface for the Docker Remote API. The goal is to provide a pure client side implementation so it is effortless to connect and manage docker.
|
||||||
|
|
||||||
![Container](/container.png)
|
![Container](/container.png)
|
||||||
|
|
||||||
|
@ -11,35 +11,30 @@ DockerUI is a web interface for the Docker Remote API. The goal is to provide a
|
||||||
* Consistency - The web UI should be consistent with the commands found on the docker CLI.
|
* Consistency - The web UI should be consistent with the commands found on the docker CLI.
|
||||||
|
|
||||||
### Quickstart
|
### Quickstart
|
||||||
```
|
1. Run: `docker run -d -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker`
|
||||||
git clone https://github.com/kevana/ui-for-docker.git
|
|
||||||
cd ui-for-docker
|
2. Open your browser to `http://<dockerd host ip>:9000`
|
||||||
npm install
|
|
||||||
npm install -g grunt-cli
|
|
||||||
# Make sure your Docker daemon is running
|
|
||||||
grunt run # Takes a while, will build the image locally as dockerui:latest and run it
|
|
||||||
# Open your browser to `http://<dockerd host ip>:9000`
|
|
||||||
```
|
|
||||||
|
|
||||||
|
|
||||||
Bind mounting the Unix socket into the DockerUI container is much more secure than exposing your docker daemon over TCP. The `--privileged` flag is required for hosts using SELinux. You should still secure your DockerUI instance behind some type of auth. Directions for using Nginx auth are [here](https://github.com/crosbymichael/dockerui/wiki/Dockerui-with-Nginx-HTTP-Auth).
|
|
||||||
|
Bind mounting the Unix socket into the UI For Docker container is much more secure than exposing your docker daemon over TCP. The `--privileged` flag is required for hosts using SELinux. You should still secure your UI For Docker instance behind some type of auth. Directions for using Nginx auth are [here](https://github.com/kevana/ui-for-docker/wiki/Dockerui-with-Nginx-HTTP-Auth).
|
||||||
|
|
||||||
### Specify socket to connect to Docker daemon
|
### Specify socket to connect to Docker daemon
|
||||||
|
|
||||||
By default DockerUI connects to the Docker daemon with`/var/run/docker.sock`. For this to work you need to bind mount the unix socket into the container with `-v /var/run/docker.sock:/var/run/docker.sock`.
|
By default UI For Docker connects to the Docker daemon with`/var/run/docker.sock`. For this to work you need to bind mount the unix socket into the container with `-v /var/run/docker.sock:/var/run/docker.sock`.
|
||||||
|
|
||||||
You can use the `-e` flag to change this socket:
|
You can use the `-e` flag to change this socket:
|
||||||
|
|
||||||
# Connect to a tcp socket:
|
# Connect to a tcp socket:
|
||||||
$ docker run -d -p 9000:9000 --privileged dockerui/dockerui -e http://127.0.0.1:2375
|
$ docker run -d -p 9000:9000 --privileged uifd/ui-for-docker -e http://127.0.0.1:2375
|
||||||
|
|
||||||
### Change address/port DockerUI is served on
|
### Change address/port UI For Docker is served on
|
||||||
DockerUI listens on port 9000 by default. If you run DockerUI inside a container then you can bind the container's internal port to any external address and port:
|
UI For Docker listens on port 9000 by default. If you run UI For Docker inside a container then you can bind the container's internal port to any external address and port:
|
||||||
|
|
||||||
# Expose DockerUI on 10.20.30.1:80
|
# Expose UI For Docker on 10.20.30.1:80
|
||||||
$ docker run -d -p 10.20.30.1:80:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock dockerui/dockerui
|
$ docker run -d -p 10.20.30.1:80:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock uifd/ui-for-docker
|
||||||
|
|
||||||
### Check the [wiki](//github.com/crosbymichael/dockerui/wiki) for more info about using dockerui
|
### Check the [wiki](https://github.com/kevana/ui-for-docker/wiki) for more info about using UI For Docker
|
||||||
|
|
||||||
### Stack
|
### Stack
|
||||||
* [Angular.js](https://github.com/angular/angular.js)
|
* [Angular.js](https://github.com/angular/angular.js)
|
||||||
|
@ -58,11 +53,11 @@ DockerUI listens on port 9000 by default. If you run DockerUI inside a container
|
||||||
|
|
||||||
|
|
||||||
### License - MIT
|
### License - MIT
|
||||||
The DockerUI code is licensed under the MIT license.
|
The UI For Docker code is licensed under the MIT license.
|
||||||
|
|
||||||
|
|
||||||
**DockerUI:**
|
**UI For Docker:**
|
||||||
Copyright (c) 2014 Michael Crosby. crosbymichael.com
|
Copyright (c) 2013-2016 Michael Crosby (crosbymichael.com), Kevan Ahlquist (kevanahlquist.com)
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person
|
Permission is hereby granted, free of charge, to any person
|
||||||
obtaining a copy of this software and associated documentation
|
obtaining a copy of this software and associated documentation
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
angular.module('dockerui', [
|
angular.module('uifordocker', [
|
||||||
'dockerui.templates',
|
'uifordocker.templates',
|
||||||
'ngRoute',
|
'ngRoute',
|
||||||
'dockerui.services',
|
'dockerui.services',
|
||||||
'dockerui.filters',
|
'dockerui.filters',
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-xs-10" id="masthead" style="display:none">
|
<div class="col-xs-10" id="masthead" style="display:none">
|
||||||
<div class="jumbotron">
|
<div class="jumbotron">
|
||||||
<h1>DockerUI</h1>
|
<h1>UI For Docker</h1>
|
||||||
|
|
||||||
<p class="lead">The UI for Docker container engine</p>
|
<p class="lead">The UI for Docker container engine</p>
|
||||||
<a class="btn btn-large btn-success" href="http://docker.io">Learn more.</a>
|
<a class="btn btn-large btn-success" href="http://docker.io">Learn more.</a>
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
<footer class="center well">
|
<footer class="center well">
|
||||||
<p>
|
<p>
|
||||||
<small>Docker API Version: <strong>{{ apiVersion }}</strong> UI Version: <strong>{{ uiVersion }}</strong> <a
|
<small>Docker API Version: <strong>{{ apiVersion }}</strong> UI Version: <strong>{{ uiVersion }}</strong> <a
|
||||||
class="pull-right" href="https://github.com/crosbymichael/dockerui">dockerui</a></small>
|
class="pull-right" href="https://github.com/kevana/ui-for-docker">UI For Docker</a></small>
|
||||||
</p>
|
</p>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<div class="masthead">
|
<div class="masthead">
|
||||||
<h3 class="text-muted">DockerUI</h3>
|
<h3 class="text-muted">UI For Docker</h3>
|
||||||
|
|
||||||
<div class="col-xs-11">
|
<div class="col-xs-11">
|
||||||
<ul class="nav well">
|
<ul class="nav well">
|
||||||
|
|
|
@ -1,13 +1,14 @@
|
||||||
{
|
{
|
||||||
"name": "dockerui",
|
"name": "uifordocker",
|
||||||
"version": "0.10.1-beta",
|
"version": "0.10.1-beta",
|
||||||
"homepage": "https://github.com/crosbymichael/dockerui",
|
"homepage": "https://github.com/kevana/ui-for-docker",
|
||||||
"authors": [
|
"authors": [
|
||||||
"Michael Crosby <crosbymichael@gmail.com>",
|
"Michael Crosby <crosbymichael@gmail.com>",
|
||||||
"Kevan Ahlquist <ahlqu039@umn.edu>"
|
"Kevan Ahlquist <ahlquistkd@gmail.com>"
|
||||||
],
|
],
|
||||||
"description": "A web interface for the Docker Remote API.",
|
"description": "A web interface for the Docker Remote API.",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
|
"uifordocker",
|
||||||
"dockerui",
|
"dockerui",
|
||||||
"docker",
|
"docker",
|
||||||
"api"
|
"api"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package main // import "github.com/crosbymichael/dockerui"
|
package main // import "github.com/kevana/ui-for-docker"
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"flag"
|
"flag"
|
||||||
|
@ -18,7 +18,7 @@ import (
|
||||||
|
|
||||||
var (
|
var (
|
||||||
endpoint = flag.String("e", "/var/run/docker.sock", "Dockerd endpoint")
|
endpoint = flag.String("e", "/var/run/docker.sock", "Dockerd endpoint")
|
||||||
addr = flag.String("p", ":9000", "Address and port to serve dockerui")
|
addr = flag.String("p", ":9000", "Address and port to serve UI For Docker")
|
||||||
assets = flag.String("a", ".", "Path to the assets")
|
assets = flag.String("a", ".", "Path to the assets")
|
||||||
authKey []byte
|
authKey []byte
|
||||||
authKeyFile = "authKey.dat"
|
authKeyFile = "authKey.dat"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# DockerUI with Swarm
|
# UI For Docker with Swarm
|
||||||
|
|
||||||
This example works with swarm clusters created with docker-machine.
|
This example works with swarm clusters created with docker-machine.
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
dockerui:
|
dockerui:
|
||||||
image: dockerui/dockerui
|
image: uifd/ui-for-docker
|
||||||
command: -e http://127.0.0.1:2375
|
command: -e http://127.0.0.1:2375
|
||||||
net: "host"
|
net: "host"
|
||||||
|
|
||||||
|
|
22
gruntFile.js
22
gruntFile.js
|
@ -86,7 +86,7 @@ module.exports = function (grunt) {
|
||||||
},
|
},
|
||||||
clean: {
|
clean: {
|
||||||
all: ['<%= distdir %>/*'],
|
all: ['<%= distdir %>/*'],
|
||||||
app: ['<%= distdir %>/*', '!<%= distdir %>/dockerui'],
|
app: ['<%= distdir %>/*', '!<%= distdir %>/ui-for-docker'],
|
||||||
tmpl: ['<%= distdir %>/templates']
|
tmpl: ['<%= distdir %>/templates']
|
||||||
},
|
},
|
||||||
copy: {
|
copy: {
|
||||||
|
@ -244,28 +244,28 @@ module.exports = function (grunt) {
|
||||||
},
|
},
|
||||||
shell: {
|
shell: {
|
||||||
buildImage: {
|
buildImage: {
|
||||||
command: 'docker build --rm -t dockerui .'
|
command: 'docker build --rm -t ui-for-docker .'
|
||||||
},
|
},
|
||||||
buildBinary: {
|
buildBinary: {
|
||||||
command: [
|
command: [
|
||||||
'docker run --rm -v $(pwd):/src centurylink/golang-builder',
|
'docker run --rm -v $(pwd):/src centurylink/golang-builder',
|
||||||
'shasum dockerui > dockerui-checksum.txt',
|
'shasum ui-for-docker > ui-for-docker-checksum.txt',
|
||||||
'mkdir -p dist',
|
'mkdir -p dist',
|
||||||
'mv dockerui dist/'
|
'mv ui-for-docker dist/'
|
||||||
].join(' && ')
|
].join(' && ')
|
||||||
},
|
},
|
||||||
run: {
|
run: {
|
||||||
command: [
|
command: [
|
||||||
'docker stop dockerui',
|
'docker stop ui-for-docker',
|
||||||
'docker rm dockerui',
|
'docker rm ui-for-docker',
|
||||||
'docker run --privileged -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --name dockerui dockerui'
|
'docker run --privileged -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock --name ui-for-docker ui-for-docker'
|
||||||
].join(';')
|
].join(';')
|
||||||
},
|
},
|
||||||
runSwarm: {
|
runSwarm: {
|
||||||
command: [
|
command: [
|
||||||
'docker stop dockerui',
|
'docker stop ui-for-docker',
|
||||||
'docker rm dockerui',
|
'docker rm ui-for-docker',
|
||||||
'docker run --net=host -d --name dockerui dockerui -e http://127.0.0.1:2374'
|
'docker run --net=host -d --name ui-for-docker ui-for-docker -e http://127.0.0.1:2374'
|
||||||
].join(';')
|
].join(';')
|
||||||
},
|
},
|
||||||
cleanImages: {
|
cleanImages: {
|
||||||
|
@ -275,7 +275,7 @@ module.exports = function (grunt) {
|
||||||
'if': {
|
'if': {
|
||||||
binaryNotExist: {
|
binaryNotExist: {
|
||||||
options: {
|
options: {
|
||||||
executable: 'dist/dockerui'
|
executable: 'dist/ui-for-docker'
|
||||||
},
|
},
|
||||||
ifFalse: ['shell:buildBinary']
|
ifFalse: ['shell:buildBinary']
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<html lang="en" ng-app="<%= pkg.name %>">
|
<html lang="en" ng-app="<%= pkg.name %>">
|
||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<title>DockerUI</title>
|
<title>UI For Docker</title>
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta name="description" content="">
|
<meta name="description" content="">
|
||||||
<meta name="author" content="<%= pkg.author %>">
|
<meta name="author" content="<%= pkg.author %>">
|
||||||
|
|
10
package.json
10
package.json
|
@ -1,19 +1,19 @@
|
||||||
{
|
{
|
||||||
"author": "Michael Crosby & Kevan Ahlquist",
|
"author": "Michael Crosby & Kevan Ahlquist",
|
||||||
"name": "dockerui",
|
"name": "uifordocker",
|
||||||
"homepage": "https://github.com/crosbymichael/dockerui",
|
"homepage": "https://github.com/kevana/ui-for-docker",
|
||||||
"version": "0.10.1-beta",
|
"version": "0.10.1-beta",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git@github.com:crosbymichael/dockerui.git"
|
"url": "git@github.com:kevana/ui-for-docker.git"
|
||||||
},
|
},
|
||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/crosbymichael/dockerui/issues"
|
"url": "https://github.com/kevana/ui-for-docker/issues"
|
||||||
},
|
},
|
||||||
"licenses": [
|
"licenses": [
|
||||||
{
|
{
|
||||||
"type": "MIT",
|
"type": "MIT",
|
||||||
"url": "https://raw.githubusercontent.com/crosbymichael/dockerui/master/LICENSE"
|
"url": "https://raw.githubusercontent.com/kevana/ui-for-docker/master/LICENSE"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"engines": {
|
"engines": {
|
||||||
|
|
Loading…
Reference in New Issue