2016-12-25 20:34:02 +00:00
< div class = "page-wrapper" >
<!-- simple box -->
< div class = "container simple-box" >
2017-03-27 12:44:39 +00:00
< div class = "col-md-8 col-md-offset-2 col-sm-10 col-sm-offset-1" >
2016-12-25 20:34:02 +00:00
<!-- simple box logo -->
< div class = "row" >
< img ng-if = "logo" ng-src = "{{ logo }}" class = "simple-box-logo" >
< img ng-if = "!logo" src = "images/logo_alt.png" class = "simple-box-logo" alt = "Portainer" >
< / div >
<!-- !simple box logo -->
<!-- init - endpoint panel -->
< div class = "panel panel-default" >
< div class = "panel-body" >
<!-- init - endpoint form -->
2017-08-28 18:59:13 +00:00
< form class = "simple-box-form form-horizontal" >
<!-- note -->
2016-12-25 20:34:02 +00:00
< div class = "form-group" >
2017-08-28 18:59:13 +00:00
< div class = "col-sm-12" >
< span class = "small text-muted" >
Connect Portainer to the Docker environment you want to manage.
< / span >
2016-12-25 20:34:02 +00:00
< / div >
2017-08-28 18:59:13 +00:00
< / div >
<!-- !note -->
<!-- endpoint - type -->
< div class = "form-group" style = "margin-bottom: 0" >
< div class = "boxselector_wrapper" >
< div >
< input type = "radio" id = "local_endpoint" ng-model = "formValues.EndpointType" value = "local" >
< label for = "local_endpoint" >
< div class = "boxselector_header" >
< i class = "fa fa-bolt" aria-hidden = "true" style = "margin-right: 2px;" > < / i >
Local
< / div >
< p > Manage the Docker environment where Portainer is running< / p >
< / label >
< / div >
< div >
< input type = "radio" id = "remote_endpoint" ng-model = "formValues.EndpointType" value = "remote" >
< label for = "remote_endpoint" >
< div class = "boxselector_header" >
< i class = "fa fa-plug" aria-hidden = "true" style = "margin-right: 2px;" > < / i >
Remote
< / div >
< p > Manage a remote Docker environment< / p >
< / label >
< / div >
2016-12-25 20:34:02 +00:00
< / div >
< / div >
2017-08-28 18:59:13 +00:00
<!-- !endpoint - type -->
2016-12-25 20:34:02 +00:00
<!-- local - endpoint -->
2017-08-28 18:59:13 +00:00
< div ng-if = "formValues.EndpointType === 'local'" >
2016-12-25 20:34:02 +00:00
< div class = "form-group" >
2017-08-28 18:59:13 +00:00
< div class = "col-sm-12" >
< span class = "small" >
< p class = "text-muted" >
< i class = "fa fa-exclamation-triangle orange-icon" aria-hidden = "true" style = "margin-right: 2px;" > < / i >
This feature is not yet available for < u > native Docker Windows containers< / u > .
< / p >
< p class = "text-primary" >
Please ensure that you have started the Portainer container with the following Docker flag < code > -v "/var/run/docker.sock:/var/run/docker.sock"< / code > in order to connect to the local Docker environment.
< / p >
2017-01-22 23:14:34 +00:00
< / span >
2016-12-25 20:34:02 +00:00
< / div >
< / div >
2017-08-28 18:59:13 +00:00
<!-- actions -->
< div class = "form-group" >
< div class = "col-sm-12" >
< button type = "submit" class = "btn btn-primary btn-sm" ng-click = "createLocalEndpoint()" > < i class = "fa fa-bolt" aria-hidden = "true" > < / i > Connect< / button >
< i id = "createResourceSpinner" class = "fa fa-cog fa-spin" style = "margin-left: 5px; display: none;" > < / i >
< / div >
< / div >
<!-- !actions -->
2016-12-25 20:34:02 +00:00
< / div >
<!-- !local - endpoint -->
<!-- remote - endpoint -->
2017-08-28 18:59:13 +00:00
< div ng-if = "formValues.EndpointType === 'remote'" >
2016-12-25 20:34:02 +00:00
<!-- name - input -->
< div class = "form-group" >
2017-08-28 18:59:13 +00:00
< label for = "endpoint_name" class = "col-sm-4 col-lg-3 control-label text-left" > Name< / label >
2017-03-27 12:44:39 +00:00
< div class = "col-sm-8 col-lg-9" >
2017-08-28 18:59:13 +00:00
< input type = "text" class = "form-control" id = "endpoint_name" ng-model = "formValues.Name" placeholder = "e.g. docker-prod01" >
2016-12-25 20:34:02 +00:00
< / div >
< / div >
<!-- !name - input -->
<!-- endpoint - url - input -->
< div class = "form-group" >
2017-03-27 12:44:39 +00:00
< label for = "endpoint_url" class = "col-sm-4 col-lg-3 control-label text-left" >
Endpoint URL
< portainer-tooltip position = "bottom" message = "URL or IP address of a Docker host. The Docker API must be exposed over a TCP port. Please refer to the Docker documentation to configure it." > < / portainer-tooltip >
< / label >
< div class = "col-sm-8 col-lg-9" >
2016-12-25 20:34:02 +00:00
< input type = "text" class = "form-control" id = "endpoint_url" ng-model = "formValues.URL" placeholder = "e.g. 10.0.0.10:2375 or mydocker.mydomain.com:2375" >
< / div >
< / div >
<!-- !endpoint - url - input -->
<!-- tls - checkbox -->
< div class = "form-group" >
2017-03-27 12:44:39 +00:00
< div class = "col-sm-12" >
< label for = "tls" class = "control-label text-left" >
TLS
< portainer-tooltip position = "bottom" message = "Enable this option if you need to specify TLS certificates to connect to the Docker endpoint." > < / portainer-tooltip >
< / label >
< label class = "switch" style = "margin-left: 20px;" >
< input type = "checkbox" ng-model = "formValues.TLS" > < i > < / i >
< / label >
2016-12-25 20:34:02 +00:00
< / div >
< / div >
<!-- !tls - checkbox -->
2017-09-14 06:08:37 +00:00
<!-- tls - options -->
2016-12-25 20:34:02 +00:00
< div ng-if = "formValues.TLS" >
2017-09-14 06:08:37 +00:00
<!-- skip - server - verification -->
2016-12-25 20:34:02 +00:00
< div class = "form-group" >
2017-09-14 06:08:37 +00:00
< div class = "col-sm-10" >
< label for = "tls_verify" class = "control-label text-left" >
Skip server verification
< portainer-tooltip position = "bottom" message = "Enable this option if you need to authenticate server based on given CA." > < / portainer-tooltip >
< / label >
< label class = "switch" style = "margin-left: 20px;" >
< input type = "checkbox" ng-model = "formValues.TLSSkipVerify" > < i > < / i >
< / label >
< / div >
< / div >
<!-- !skip - server - verification -->
<!-- skip - client - verification -->
< div class = "form-group" >
< div class = "col-sm-10" >
< label for = "tls_client_cert" class = "control-label text-left" >
Skip client verification
< portainer-tooltip position = "bottom" message = "Enable this option if you need to authenticate with a client certificate." > < / portainer-tooltip >
< / label >
< label class = "switch" style = "margin-left: 20px;" >
< input type = "checkbox" ng-model = "formValues.TLSSKipClientVerify" > < i > < / i >
< / label >
< / div >
< / div >
<!-- !skip - client - verification -->
< div class = "col-sm-12 form-section-title" ng-if = "!formValues.TLSSkipVerify || !formValues.TLSSKipClientVerify" >
Required TLS files
< / div >
<!-- ca - input -->
< div class = "form-group" ng-if = "!formValues.TLSSkipVerify" >
< label class = "col-sm-4 col-lg-3 control-label text-left" > TLS CA certificate< / label >
< div class = "col-sm-8 col-lg-9" >
2016-12-25 20:34:02 +00:00
< button class = "btn btn-sm btn-primary" ngf-select ng-model = "formValues.TLSCACert" > Select file< / button >
< span style = "margin-left: 5px;" >
{{ formValues.TLSCACert.name }}
< i class = "fa fa-times red-icon" ng-if = "!formValues.TLSCACert" aria-hidden = "true" > < / i >
< i class = "fa fa-circle-o-notch fa-spin" ng-if = "state.uploadInProgress" > < / i >
< / span >
< / div >
< / div >
<!-- !ca - input -->
2017-09-14 06:08:37 +00:00
< div ng-if = "!formValues.TLSSKipClientVerify" >
<!-- cert - input -->
< div class = "form-group" >
< label for = "tls_cert" class = "col-sm-4 col-lg-3 control-label text-left" > TLS certificate< / label >
< div class = "col-sm-8 col-lg-9" >
< button class = "btn btn-sm btn-primary" ngf-select ng-model = "formValues.TLSCert" > Select file< / button >
< span style = "margin-left: 5px;" >
{{ formValues.TLSCert.name }}
< i class = "fa fa-times red-icon" ng-if = "!formValues.TLSCert" aria-hidden = "true" > < / i >
< i class = "fa fa-circle-o-notch fa-spin" ng-if = "state.uploadInProgress" > < / i >
< / span >
< / div >
2016-12-25 20:34:02 +00:00
< / div >
2017-09-14 06:08:37 +00:00
<!-- !cert - input -->
<!-- key - input -->
< div class = "form-group" >
< label class = "col-sm-4 col-lg-3 control-label text-left" > TLS key< / label >
< div class = "col-sm-8 col-lg-9" >
< button class = "btn btn-sm btn-primary" ngf-select ng-model = "formValues.TLSKey" > Select file< / button >
< span style = "margin-left: 5px;" >
{{ formValues.TLSKey.name }}
< i class = "fa fa-times red-icon" ng-if = "!formValues.TLSKey" aria-hidden = "true" > < / i >
< i class = "fa fa-circle-o-notch fa-spin" ng-if = "state.uploadInProgress" > < / i >
< / span >
< / div >
2016-12-25 20:34:02 +00:00
< / div >
2017-09-14 06:08:37 +00:00
<!-- !key - input -->
2016-12-25 20:34:02 +00:00
< / div >
< / div >
2017-09-14 06:08:37 +00:00
<!-- !tls - options -->
2017-08-28 18:59:13 +00:00
<!-- actions -->
< div class = "form-group" >
< div class = "col-sm-12" >
2017-09-14 06:08:37 +00:00
< button type = "submit" class = "btn btn-primary btn-sm" ng-disabled = "!formValues.Name || !formValues.URL || (formValues.TLS && ((formValues.TLSVerify && !formValues.TLSCACert) || (!formValues.TLSSKipClientVerify && (!formValues.TLSCert || !formValues.TLSKey))))" ng-click = "createRemoteEndpoint()" > < i class = "fa fa-plug" aria-hidden = "true" > < / i > Connect< / button >
2017-08-28 18:59:13 +00:00
< i id = "createResourceSpinner" class = "fa fa-cog fa-spin" style = "margin-left: 5px; display: none;" > < / i >
2016-12-25 20:34:02 +00:00
< / div >
< / div >
2017-08-28 18:59:13 +00:00
<!-- !actions -->
2016-12-25 20:34:02 +00:00
< / div >
<!-- !remote - endpoint -->
< / form >
<!-- !init - endpoint form -->
< / div >
< / div >
<!-- !init - endpoint panel -->
< / div >
< / div >
<!-- !simple box -->
< / div >