commit
f46b736c65
|
@ -2,3 +2,5 @@ logs/*
|
||||||
!.gitkeep
|
!.gitkeep
|
||||||
dockerui
|
dockerui
|
||||||
*.esproj/*
|
*.esproj/*
|
||||||
|
node_modules
|
||||||
|
.idea
|
||||||
|
|
44
README.md
44
README.md
|
@ -1,40 +1,46 @@
|
||||||
## DockerUI
|
## DockerUI
|
||||||
|
|
||||||
![Containers](/containers.png)
|
![Containers](/containers.png)
|
||||||
DockerUI is a web interface to interact with the 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.
|
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.
|
||||||
|
|
||||||
![Container](/container.png)
|
![Container](/container.png)
|
||||||
|
|
||||||
|
|
||||||
### Goals
|
### Goals
|
||||||
* Little to no dependencies - I really want to keep this project a pure html/js app. I know this will have to change so that I can introduce authentication and authorization along with managing multiple docker endpoints.
|
* Minimal dependencies - I really want to keep this project a pure html/js app.
|
||||||
* 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.
|
||||||
|
|
||||||
### Container Quickstart
|
### Container Quickstart
|
||||||
|
1. Run: `docker run -d -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock dockerui/dockerui`
|
||||||
|
|
||||||
* Run `docker build -t crosbymichael/dockerui github.com/crosbymichael/dockerui`
|
2. Open your browser to `http://<dockerd host ip>:9000`
|
||||||
* `docker run -d -p 9000:9000 -v /var/run/docker.sock:/docker.sock crosbymichael/dockerui -e /docker.sock`
|
|
||||||
* 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
|
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).
|
||||||
daemon over tcp. You should still secure your dockerui instance behind some type of auth. Maybe running
|
|
||||||
nginx infront of dockerui with basic auth.
|
|
||||||
|
|
||||||
### Connect via a unix socket
|
### Specify socket to connect to Docker daemon
|
||||||
If you want to connect to docker via the unix socket you can pass the socket path to the `-e` variable. If you are running dockerui in a container you can bind mount the unix socket into the container.
|
|
||||||
|
|
||||||
```bash
|
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`.
|
||||||
docker run -d -p 9000:9000 -v /var/run/docker.sock:/docker.sock crosbymichael/dockerui -e /docker.sock
|
|
||||||
```
|
You can use the `-e` flag to change this socket:
|
||||||
|
|
||||||
|
# Connect to a tcp socket:
|
||||||
|
$ docker run -d -p 9000:9000 --privileged dockerui/dockerui -e http://127.0.0.1:2375
|
||||||
|
|
||||||
|
### Change address/port DockerUI 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:
|
||||||
|
|
||||||
|
# Expose DockerUI 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
|
||||||
|
|
||||||
### Check the [wiki](//github.com/crosbymichael/dockerui/wiki) for more info about using dockerui
|
### Check the [wiki](//github.com/crosbymichael/dockerui/wiki) for more info about using dockerui
|
||||||
|
|
||||||
### Stack
|
### Stack
|
||||||
* Angular.js
|
* [Angular.js](https://github.com/angular/angular.js)
|
||||||
* Flatstrap ( Flat Twitter Bootstrap )
|
* [Bootstrap](http://getbootstrap.com/)
|
||||||
* Spin.js
|
* [Gritter](https://github.com/jboesch/Gritter)
|
||||||
* Ace editor
|
* [Spin.js](https://github.com/fgnass/spin.js/)
|
||||||
|
* [Golang](https://golang.org/)
|
||||||
|
|
||||||
|
|
||||||
### Todo:
|
### Todo:
|
||||||
|
@ -45,11 +51,11 @@ docker run -d -p 9000:9000 -v /var/run/docker.sock:/docker.sock crosbymichael/do
|
||||||
|
|
||||||
|
|
||||||
### License - MIT
|
### License - MIT
|
||||||
The DockerUI code is licensed under the MIT license. Flatstrap(bootstrap) is licensed under the Apache License v2.0 and Angular.js is licensed under MIT.
|
The DockerUI code is licensed under the MIT license.
|
||||||
|
|
||||||
|
|
||||||
**DockerUI:**
|
**DockerUI:**
|
||||||
Copyright (c) 2013 Michael Crosby. crosbymichael.com
|
Copyright (c) 2014 Michael Crosby. crosbymichael.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
|
||||||
|
|
Loading…
Reference in New Issue