![]() * fix(registry): fetch datatable details on page/filter/order state change instead of fetching all data on first load * fix(registry): fetch tags datatable details on state change instead of fetching all data on first load * fix(registry): add pagination support for tags + loading display on data load * fix(registry): debounce on text filter to avoid querying transient matching values * refactor(registry): rebase on latest develop * feat(registries): background tags and optimisation -- need code cleanup and for-await-of to cancel on page leave * refactor(registry-management): code cleanup * feat(registry): most optimized version -- need fix for add/retag * fix(registry): addTag working without page reload * fix(registry): retag working without reload * fix(registry): remove tag working without reload * fix(registry): remove repository working with latest changes * fix(registry): disable cache on firefox * feat(registry): use jquery for all 'most used' manifests requests * feat(registry): retag with progression + rewrite manifest REST service to jquery * fix(registry): remove forgotten DI * fix(registry): pagination on repository details * refactor(registry): info message + hidding images count until fetch has been done * fix(registry): fix selection reset deleting selectAll function and not resetting status * fix(registry): resetSelection was trying to set value on a getter * fix(registry): tags were dropped when too much tags were impacted by a tag removal * fix(registry): firefox add tag + progression * refactor(registry): rewording of elements * style(registry): add space between buttons and texts in status elements * fix(registry): cancelling a retag/delete action was not removing the status panel * fix(registry): tags count of empty repositories * feat(registry): reload page on action cancel to avoid desync * feat(registry): uncancellable modal on long operations * feat(registry): modal now closes on error + modal message improvement * feat(registries): remove empty repositories from the list * fix(registry): various bugfixes * feat(registry): independant timer on async actions + modal fix |
||
---|---|---|
.github | ||
api | ||
app | ||
assets | ||
build | ||
distribution | ||
test/unit | ||
webpack | ||
.babelrc | ||
.codeclimate.yml | ||
.dockerignore | ||
.eslintignore | ||
.eslintrc.yml | ||
.gitignore | ||
.godir | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
LICENSE | ||
README.md | ||
build.sh | ||
gruntfile.js | ||
package.json | ||
postcss.config.js | ||
templates.json | ||
webpack.config.js | ||
yarn.lock |
README.md
Portainer is a lightweight management UI which allows you to easily manage your different Docker environments (Docker hosts or Swarm clusters). Portainer is meant to be as simple to deploy as it is to use. It consists of a single container that can run on any Docker engine (can be deployed as Linux container or a Windows native container, supports other platforms too). Portainer allows you to manage all your Docker resources (containers, images, volumes, networks and more) ! It is compatible with the standalone Docker engine and with Docker Swarm mode.
Demo
You can try out the public demo instance: http://demo.portainer.io/ (login with the username admin and the password tryportainer).
Please note that the public demo cluster is reset every 15min.
Alternatively, you can deploy a copy of the demo stack inside a play-with-docker (PWD) playground:
- Browse PWD/?stack=portainer-demo/play-with-docker/docker-stack.yml
- Sign in with your Docker ID
- Follow these steps.
Unlike the public demo, the playground sessions are deleted after 4 hours. Apart from that, all the settings are same, including default credentials.
Getting started
Getting help
NOTE: You can find more information about Portainer support framework policy here: https://www.portainer.io/2019/04/portainer-support-policy/
- Issues: https://github.com/portainer/portainer/issues
- FAQ: https://portainer.readthedocs.io/en/latest/faq.html
- Slack (chat): https://portainer.io/slack/
Reporting bugs and contributing
- Want to report a bug or request a feature? Please open an issue.
- Want to help us build portainer? Follow our contribution guidelines to build it locally and make a pull request. We need all the help we can get!
Security
- Here at Portainer, we believe in responsible disclosure of security issues. If you have found a security issue, please report it to security@portainer.io.
Limitations
Portainer has full support for the following Docker versions:
- Docker 1.10 to the latest version
- Standalone Docker Swarm >= 1.2.3 (NOTE: Use of Standalone Docker Swarm is being discouraged since the introduction of built-in Swarm Mode in Docker. While older versions of Portainer had support for Standalone Docker Swarm, Portainer 1.17.0 and newer do not support it. However, the built-in Swarm Mode of Docker is fully supported.)
Partial support for the following Docker versions (some features may not be available):
- Docker 1.9
Licensing
Portainer is licensed under the zlib license. See LICENSE for reference.
Portainer also contains the following code, which is licensed under the MIT license:
UI For Docker: Copyright (c) 2013-2016 Michael Crosby (crosbymichael.com), Kevan Ahlquist (kevanahlquist.com), Anthony Lapenna (portainer.io)
rdash-angular: Copyright (c) [2014] [Elliot Hesp]