portainer
什么是portainer ?
Docker的一个图形化界面管理工具
portainer安装
# portainer安装
[root@izuf6akcgealirj602cmxsz run]# docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer
Unable to find image 'portainer/portainer:latest' locally
latest: Pulling from portainer/portainer
94cfa856b2b1: Pull complete
49d59ee0881a: Pull complete
a2300fd28637: Pull complete
Digest: sha256:fb45b43738646048a0a0cc74fcee2865b69efde857e710126084ee5de9be0f3f
Status: Downloaded newer image for portainer/portainer:latest
c120dbdec5e530a36058d9a936300c077b81e61728d03006f28608eddac12798
# portainer本地访问测试
[root@izuf6akcgealirj602cmxsz run]# curl localhost:8088
<!DOCTYPE html
><html lang="en" ng-app="portainer">
<head>
<meta charset="utf-8" />
<title>Portainer</title>
<meta name="description" content="" />
<meta name="author" content="Portainer.io" />
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="//html5shim.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<!-- Fav and touch icons -->
<link rel="apple-touch-icon" sizes="180x180" href="dc4d092847be46242d8c013d1bc7c494.png" />
<link rel="icon" type="image/png" sizes="32x32" href="5ba13dcb526292ae707310a54e103cd1.png" />
<link rel="icon" type="image/png" sizes="16x16" href="f9508a64a1beb81be174e194573f7450.png" />
<link rel="mask-icon" href="07745d55b001c85826eedd479285cdbb.svg" color="#5bbad5" />
<link rel="shortcut icon" href="data:image/vnd.microsoft.icon;base64,AAA ... AAA=" />
<meta name="msapplication-config" content="4806ce9049e1e082dd3da4063ceb0eea.xml" />
<meta name="theme-color" content="#ffffff" />
<link href="vendor.1.css" rel="stylesheet"><link href="main.50213a000e42f5c05bcc.css" rel="stylesheet"></head>
<body ng-controller="MainController">
<div
id="page-wrapper"
ng-class="{
open: toggle && ['portainer.auth', 'portainer.updatePassword', 'portainer.init.admin', 'portainer.init.endpoint'].indexOf($state.current.name) === -1,
nopadding: ['portainer.auth', 'portainer.updatePassword', 'portainer.init.admin', 'portainer.init.endpoint'].indexOf($state.current.name) > -1 || applicationState.loading
}"
ng-cloak
>
<div id="sideview" ui-view="sidebar" ng-if="!applicationState.loading"></div>
<div id="content-wrapper">
<div class="page-content">
<div class="page-wrapper" ng-if="applicationState.loading">
<!-- loading box -->
<div class="container simple-box">
<div class="col-md-6 col-md-offset-3 col-sm-6 col-sm-offset-3">
<!-- loading box logo -->
<div class="row">
<img ng-if="logo" ng-src="{{ logo }}" class="simple-box-logo" />
<img ng-if="!logo" src="5da83cfb4883a59354abeff852cb7394.png" class="simple-box-logo" alt="Portainer" />
</div>
<!-- !loading box logo -->
<!-- panel -->
<div class="row" style="text-align: center;">
Loading Portainer...
<i class="fa fa-cog fa-spin" style="margin-left: 5px;"></i>
</div>
<!-- !panel -->
</div>
</div>
<!-- !loading box -->
</div>
<!-- Main Content -->
<div id="view" ui-view="content" ng-if="!applicationState.loading"></div> </div
><!-- End Page Content --> </div
><!-- End Content Wrapper --> </div
><!-- End Page Wrapper -->
<script type="text/javascript" src="vendor.50213a000e42f5c05bcc.js"></script><script type="text/javascript" src="main.50213a000e42f5c05bcc.js"></script></body></html
外网访问
访问地址:http://服务器IP:端口号
账号:admin
密码:自己设置的密码