francescou / docker-compose-ui Goto Github PK
View Code? Open in Web Editor NEWweb interface for Docker Compose
Home Page: http://francescou.github.io/docker-compose-ui
License: MIT License
web interface for Docker Compose
Home Page: http://francescou.github.io/docker-compose-ui
License: MIT License
Hi
Can we found an elegant way to manage many projects
I test with 50 projects, and i see two things
Do you agree ?
Thx
When I build the project, how to turn off the cache?
Hi @francescou,
Great works on this compose-ui!!
Do you have planed for an Edit Button for either Yaml file, Reame file (logo also should be nice)
I plan to use compose-ui to allow several dev teams to interract with a docker swarm cluster, and theses features would be great.
Hi @francescou,
thank you very much for this great tool. It has helped us a lot in our QA workflow and we would like to continue using it in our project.
With the release 1.13 Docker-Engine will support deploying stacks directly from compose files. It will be great if docker-compose-ui integrates this feature, so that stacks defined in a compose-file could get deployed on a swarm by compose-ui. Are you considering such an update?
Best regards,
Ali
Tried to start the simple wordpress project and got the following error. Does the project support Docker 1.9 and docker-compose 1.5? Thanks.
error: argument 2 to map() must support iteration
Here is the wordpress YAML file
wordpress:
image: wordpress
links:
- db:mysql
ports:
- 80
db:
image: mariadb
environment:
MYSQL_ROOT_PASSWORD: root
Here is the docker version info.
Client:
Version: 1.9.0
API version: 1.21
Go version: go1.4.2
Git commit: 76d6bc9
Built: Tue Nov 3 17:43:42 UTC 2015
OS/Arch: linux/amd64
Server:
Version: swarm/1.0.0
API version: 1.21
Go version: go1.5.1
Git commit: 087e245
Built:
OS/Arch: linux/amd64
Hello,
Is it possible for compose-ui instead of reading docker-compose.yml file, to read docker-compose*.yml files ?
I used to specify several docker-compose-files with -f when using docker-compose, that allow me to simplify big docker-compose file maintenability ex :
-rw-r--r-- 1 cloud docker 3211 Jul 11 09:13 docker-compose-base.yml
-rw-r--r-- 1 cloud docker 684 Jul 5 10:22 docker-compose-logs.yml
-rw-r--r-- 1 cloud docker 629 Aug 10 08:44 docker-compose-networks.yml
-rw-r--r-- 1 cloud docker 771 Jul 11 09:12 docker-compose-traefik.yml
-rw-r--r-- 1 cloud docker 377 Jul 11 09:18 docker-compose-volumes.yml
Hi @francescou,
on v1.1.0, I don't see anymore the projects in table cell, :
Note sur if it could be Nicer if it was left-align ?
also would it be possible regarding pagination to bring at first "On" services ?
Thanks a lot for your hard work
seb
i dont see any option to edit yml file after its created...
I tryed the tool, booting up my docker-compose stack was no problem.
However the only logical way to stop my stack seems to be "kill", which sounds a bit hard.
When terminating a Docker-Compose setup, you can sigterm it one to allow him shutdown or sigterm him twice to force hard shutdown.
What is this tool using?
Also why not add the start/stop commands in the case you cont want to build the stack with "up"?
I have two mounts - one for the code and one for config. They are both local folders inside the same directory as the docker-compose.yml
- ./code:/var/www/html
- ./code:/var/www/html/config.php
This works fine from the command line, but through docker-compose-ui, only the second one gets applied, even though the gui says both volumes are mounted.
for uploading my own demo projects should we use the folder structure exactly the below?
can't i use my own path: /Users//docker-compose-ui/demo-projects ?
/home/user/docker-compose-ui/demo-projects
If I give my own path getting the below error
no projects configured, please run the container with the option
-v /home/user/docker-compose-ui/demo-projects:/opt/docker-compose-projects:ro
the command i ran
docker run --name docker-compose-ui -p 5000:5000 -v /Users/mkscala/docker-compose-ui/demo-projects:/opt/docker-compose-projects:ro -v /var/run/docker.sock:/var/run/docker.sock francescou/docker-compose-ui
Hi,
I like your project very much! My company is looking for ways to make it very easy to have access to all our docker compositions. Currently, our docker-compose.yml files plus additional stuff are in multiple git repositories. There would be tagged commits to mark different release versions.
Now it would be great if our compositions would show up in docker-compose-ui (let's call it dcu), with the option to build / pull / start / etc. any of the tagged versions. I can think of multiple ways to archive this:
In any case, there would have to be a solution for choosing between multiple release versions of a composition (similar to Docker Hub).
What do you think about this? If we could agree on a design, I would try to support you with the development (I am mostly a node.js developer, but your code style is super clean so it shouldn't be a problem).
First of all thank-you so much for the awesome project
We have multiple hosts and on each hosts we are running multiple docker-compose projects.
Right now to manage these docker-compose projects . we are running docker-compose-ui instance on each host.
It would be awesome if we can manage these projects from single docker-compose UI instance.
Possible to dun a docker-compose run service command with current API? If not any plans to add it?
Is that possible ?
Thanx
Hi,
Thanks for the contribution.
Is there anyway to view compose.yaml of a project? We cannot add additional metadata and query it using labels is that true?
Currently the compose search engine is fixed to https://www.composeregistry.com.
Could this be may configurable?
Hi @francescou,
really really cool your docker-compose-ui, thank you !
I have a problem with the ON button for new project. With yours demos projects, no problem. But when a create a project and "UP" it, the status don't become "ON". For example, as you can see below, with my test project ASSE, whereas containers are up and website accessible, it's not "ON".
Can you explain me why ? I don't find.
For hello-node project, just after the click on "UP" button, the status is "ON".
As you can see, I had a button OFF but I made this modification after my tests.
Thank you for your back.
After a while without navigate into the UI and come back, Every click on existing app or others don't provides according change. It seams that the UI have lost the connection with docker (swarm in my case).
If I make a F5 refresh I've got an empty error :
After that it seams to recover with the swarm connection
Hi,
Nice project,Much appreciation for your done!
I tried to request a composeregistry.com api token ,but no response for a long time .
Could U send me an api token ?
Here is my email : [email protected] .
Much thanks. 👍
Set smaller fonts would be nice as well.
When you have a long log, it's looks almost unreadable...
Thank you!
My Use case:
I use compose file with several environmental variable (like $VERSION, $BASE_PATH for volumes mapping and etc.). I deploy everything with ansible and save a text file with variables that were used for last deploy.
When I try to run scale on a service, compose-ui fails because env vars are not defined.
It would be nice to have an option to load env vars file from the same folder where compose file is and edit it (for the case you want to update a version and restart)
It seems that docker-compose-ui doesn't respond to changes to files on attached volumes well. If I make a change to the docker-compose.yml in the folder I mounted to /opt/docker-compose-projects it gives me an unexpected character #x0000 error. I have to move the file to docker-compose.yaml reload the page, then move it back or else I get a error:u message. I'm running docker 1.12.1 on my mac via docker-machine.
In addition (not sure if this is related) I changed the settings of a volume in the docker-compose.yml file and it seemed to add that to a cached list of the previous volumes settings, so that even though I had 2 volumes in my docker-compose file, it was showing 3 - the two current ones and the one that I changed that no longer exists. I've restarted the docker-compose-ui and it still seems to cache the settings. However, if I just manually run docker-compose up in the folder it works fine.
Add a button to execute docker-compose restart
.
I have created a demo project, which I cant up:
https://code.flyacts.com/tsc/docker-compose-example
npm complains that it cant find the package.json
which is right because the volume .:/usr/src/app
does not seem to be mounted?!?
If I start the project from a shell via docker-compose up
it starts as expected.
Hi !
WDYT about adding some colour label or png images/logos to projects
These labels/logos can then appear on the left of the project list
Thanx
Hello Francesco, this ui is very clean an useful, thank you!
I have a request: I wish the vision of the logs returned as it was in previous versions, when the logs of all containers were viewed simultaneously in the same window. Do you think is possible?
can this API delete an project or delete the project folder?
Hi,
The remote host using HTTPS. Is there any way to specify the certification path to make HTTPS work? The UI does not have the options. Thanks.
Yue
tried to build Container from scratch
output:
Projects
{{id}}
filter by project name:
no projects configured, please run the container with the option
-v /home/user/docker-compose-ui/demo-projects:/opt/docker-compose-projects:ro
Reload projects Create new project Settings
Logs are looking good:
DEBUG:root:{'node-redis': '/opt/docker-compose-projects/node-redis', 'volumes-demo': '/opt/docker-compose-projects/volumes-demo', 'hello-node': '/opt/docker-compose-projects/hello-node'}
WARNING:werkzeug: * Debugger is active!
INFO:werkzeug: * Debugger pin code: 121-154-210
INFO:werkzeug:172.20.82.232 - - [06/Jan/2016 13:59:25] "GET / HTTP/1.1" 304 -
Am I missing something?
/env/bin/pip list
docker-compose (1.5.2)
docker-py (1.6.0)
dockerpty (0.3.4)
docopt (0.6.2)
enum34 (1.1.2)
Flask (0.10.1)
functools32 (3.2.3.post2)
itsdangerous (0.24)
Jinja2 (2.8)
jsonschema (2.5.1)
MarkupSafe (0.23)
pip (7.1.2)
PyYAML (3.11)
requests (2.7.0)
setuptools (18.2)
six (1.10.0)
texttable (0.8.4)
websocket-client (0.35.0)
Werkzeug (0.11.3)
wheel (0.24.0)
Hello! It would be possible to have another button that implements the new feature of docker-compose, "down"? It is very useful cause "down" means stop, kill and rm of the containers.
Hi
Can we imagine that the docker-compose file in repository have some variables in them ?
So, when we up a project, a form pop up and we can set some variables for this run.
This functionnality will be similar to the rancher-compose questions feature.
What do you think ?
Hi
We can add project by the UI, but we cant delete them.
How do you think of this ?
I've added some real time functionality on branch ahab using ahab and RxJS
It is still under heavy development, feedback is welcome.
If you want to try the RC version run:
docker run \
--name docker-compose-ui \
-p 5000:5000 \
-v /var/run/docker.sock:/var/run/docker.sock \
francescou/docker-compose-ui:1.0.RC1
Hi,
I have set an external Swarm cluster with docker-compose-ui. It's great as I can provide a simple UI to my users avoiding them to access my orchestrator UI (I am currently using Rancher to manage my infraestructure).
When I launch containers from docker-compose-ui I can manage them from Rancher without problem, but when I launch containers from Rancher docker-compose-ui does not recognize the new projects as it only searches for new projects at local endpoint. Could it be possible to include also external projects? I mean: could I manage from docker-compose-ui those containers launch in the same swarm cluster from other clients??
Hi folks,
I really like your project.
Unfortunately I cannot use it in production because I use a config file on my host before using docker-compose up.
It looks like this.
environment:
HTML_ROOT: ${HTML_ROOT}
SITE_TITLE: ${SITE_TITLE}
ADMIN_USER: ${ADMIN_USER}
ADMIN_PW: ${ADMIN_PW}
ADMIN_EMAIL: ${ADMIN_EMAIL}
My Startup Script looks like this
source config.cf
docker-compose up
The advantage is, that I only have to use one config file for everything instead of hardcoding the environment variables inside the docker-compose.yml.
Also my 2. Question. Is it possible to use a custom docker-compose.yml? So I could make a docker-production.yml and so on.
Best Regards
Michael
I have a docker-compose.yml which refers to the folders in current directory
base:
image: centos:6.6
entrypoint: /bin/bash
volumes:
- ./scripts:/scripts
command: /scripts/infinite.sh
The file is there in the ./scripts folder but your API doesn't bring it up fine and I get an error that infinite.sh file is not there. Since you are running it in a docker-container I believe the mapping doesn't happen properly
I have several containers defined in compose file, and it works great with compose-ui.
When I press on "scale" button on a container, the page is refreshed but nothing happens.
If I run from command line on the machine:
docker-compose scale worker=2
it runs the second worker container and i can see it in UI.
Is there logs i can see in docker-compose-ui? What is missing?
Please advise.
Thank you
I am using Virtual Box.
so docker-compose projects resides on windows box and marked as shared folder which are then passed to docker-compose-ui container using volume.
Quite often i am running into a problem with error message.
error: yaml.reader.ReaderError: unacceptable character #x0000: special characters are not allowed
I think this problem relates to caching of yaml file by containerized docker-compose (which i believe docker-compose-ui is doing behind the scenes)
See Issue docker/compose#3424
Right Now fix is rename yaml files (yaml to yml or vice-versa to invalidate cache)
It's still annoying nonetheless
Any thoughts from your side ?
Hello,
Nice project 👍
Should it be possible to 'prettify' logs ?
Especially ansi colors codes (https://en.wikipedia.org/wiki/ANSI_escape_code#Colors).
Here a sample nginx logs output from your log endpoint /api/v1/logs/:id/:container/:limit
"2016-02-29T10:25 \u001b[0;37;1mforego | \u001b[0mstarting nginx.1 on port 5000",
"2016-02-29T10:25 \u001b[0;37;1mforego | \u001b[0mstarting dockergen.1 on port 5100",
"2016-02-29T10:25 \u001b[0;33;1mdockergen.1 | \u001b[0;31;1m2016/02/29 10:25:31 Generated '/etc/nginx/conf.d/default.conf' from 4 containers",
"2016-02-29T10:25 \u001b[0m\u001b[0;33;1mdockergen.1 | \u001b[0;31;1m2016/02/29 10:25:31 Running 'nginx -s reload'",
"2016-02-29T10:25 \u001b[0m\u001b[0;33;1mdockergen.1 | \u001b[0;31;1m2016/02/29 10:25:32 Watching docker events",
Here "\u001b[0;36;1mnginx.1 | \u001b[0m" should display "nginx.1 | " in cyan (36) and bold (1).
You may use https://github.com/ralphbean/ansi2html in Python or https://github.com/rburns/ansi-to-html in Javascript.
Regards
Julien
I have a large set of services defined that are spread around in my cluster by swarm. When I press the Up button in the Compose UI it starts working (shown by the animation), but there is no information about progress and possible problems in this phase. In this phase I need to go to the console and get the Compose UI log to see what is going on. So, a feature request is to get this informaion via the web GUI.
-- TB
Seem that only registry V1 is supported. Correct?
If correct, what is the plan w.r.t. V2 support?
How can I get this to work now?
Is it possible to provide a secure access to UI, via login for eg ?
Hi
Can we add an option (environment) to show readme file of project open by default ?
Or set it by default open if you think it's better ?
I think those readme files aren't so long
WDYT ?
Hi,
Is is possible to add a terminal(tty) embedded in the UI which will help us to checks the logs and run commands within the browser.
Thanks,
Mani
I believe it should appear in container details
Hi,
I'm trying to run the container behind a reverse proxy, the url is like http://myserver/compose-ui/
and the proxy is configured to strip the compose-ui/
part before passing the request.
Everything is working fine, except for one link: + Create new project
That link has a leading "/", so the resulting url is http://myserver/#/create
instead of http://myserver/compose-ui/#/create
.
I didn't play much with the ui yet, i'll update the issue if i find other absolute paths.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.