721 lines
26 KiB
HTML
721 lines
26 KiB
HTML
|
<div class="config-setup-tool-element">
|
||
|
<!-- Basic Configuration -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-gears"></i> Basic Configuration
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<table class="config-table">
|
||
|
<tr>
|
||
|
<td>Secret Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.SECRET_KEY"
|
||
|
placeholder="A unique secret key"></span>
|
||
|
<div class="help-text">
|
||
|
This should be a UUID or some other secret string
|
||
|
</div>
|
||
|
</td>
|
||
|
<td>
|
||
|
<button class="btn btn-primary" ng-click="generateKey()">Generate Key</button>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Enterprise Logo URL:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.ENTERPRISE_LOGO_URL"
|
||
|
placeholder="URL of a logo to use for your enterprise"></span>
|
||
|
<div class="help-text">
|
||
|
This is optional. If not specified, the default logo will be used.
|
||
|
</div>
|
||
|
</td>
|
||
|
<td>
|
||
|
<img ng-src="{{ config.ENTERPRISE_LOGO_URL }}">
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td class="non-input">Contact Information:</td>
|
||
|
<td colspan="2">
|
||
|
<span class="config-list-field" binding="config.CONTACT_INFO" item-title="Contact URL"
|
||
|
placeholder="Add contact information"></span>
|
||
|
<div class="help-text" style="margin-top: 10px;">
|
||
|
Information to show in the Contact Page. If none specified, CoreOS contact information
|
||
|
is displayed.
|
||
|
</div>
|
||
|
|
||
|
<div class="help-text">
|
||
|
<table class="inner-table">
|
||
|
<tr><td><i class="fa fa-envelope"></i> E-mail</td><td>mailto:some@email.com</td></tr>
|
||
|
<tr><td><i class="fa fa-comment"></i> IRC</td><td>irc://server:port/channel</td></tr>
|
||
|
<tr><td><i class="fa fa-phone"></i> Telephone</td><td>tel:number</td></tr>
|
||
|
<tr><td><i class="fa fa-twitter"></i> Twitter</td><td>https://twitter.com/twitterhandle</td></tr>
|
||
|
<tr><td><i class="fa fa-ticket"></i> URL</td><td>http(s)://*</td></tr>
|
||
|
</table>
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>User Creation:</td>
|
||
|
<td>
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.FEATURE_USER_CREATION">Enable User Creation
|
||
|
</label>
|
||
|
<div class="help-text">
|
||
|
If enabled, users can be created from the registry UI.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Build Support:</td>
|
||
|
<td colspan="2">
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.FEATURE_BUILD_SUPPORT">Enable Dockerfile Build
|
||
|
</label>
|
||
|
<div class="help-text">
|
||
|
If enabled, users can submit Dockerfiles to be built and pushed by the Enterprise Registry.
|
||
|
</div>
|
||
|
|
||
|
<div ng-if="config.FEATURE_BUILD_SUPPORT" style="margin-top: 10px">
|
||
|
<strong>Note: Build workers are required for this feature.</strong>
|
||
|
See <a href="https://coreos.com/docs/enterprise-registry/build-support/" target="_blank">Adding Build Workers</a> for instructions on how to setup build workers.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<!-- Server Configuration -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-cloud"></i> Server Configuration
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<table class="config-table">
|
||
|
<tr>
|
||
|
<td>Server hostname:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.SERVER_HOSTNAME"
|
||
|
placeholder="Hostname (and optional port)"></span>
|
||
|
<div class="help-text">
|
||
|
The HTTP host (and optionally the port number) of the location
|
||
|
where the registry will be accessible on the network
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>SSL:</td>
|
||
|
<td>
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.PREFERRED_URL_SCHEME"
|
||
|
ng-true-value="https" ng-false-value="http">Enable SSL
|
||
|
</label>
|
||
|
<div class="help-text">
|
||
|
A valid SSL certificate and private key files are required to use this option.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.PREFERRED_URL_SCHEME == 'https'">
|
||
|
<td class="non-input">SSL certificate:</td>
|
||
|
<td>
|
||
|
<span class="config-file-field" filename="ssl.cert"></span>
|
||
|
<div class="help-text">
|
||
|
The certificate must be in PEM format.
|
||
|
</div
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.PREFERRED_URL_SCHEME == 'https'">
|
||
|
<td class="non-input">SSL key:</td>
|
||
|
<td>
|
||
|
<span class="config-file-field" filename="ssl.key"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
<!-- Database -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-database"></i> Database
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<!--<a href="https://coreos.com/docs/enterprise-registry/mysql-container/" target="_blank">
|
||
|
Use a prebuilt Docker container
|
||
|
</a>-->
|
||
|
|
||
|
<div class="description">
|
||
|
<p>A MySQL RDBMS or Postgres installation with an empty database is required. The schema will be created the first time the registry image is run with valid configuration.</p>
|
||
|
</div>
|
||
|
|
||
|
|
||
|
<div class="config-parsed-field" binding="config.DB_URI"
|
||
|
parser="parseDbUri(value)"
|
||
|
serializer="serializeDbUri(fields)">
|
||
|
<table class="config-table">
|
||
|
<tr>
|
||
|
<td class="non-input">Database Type:</td>
|
||
|
<td>
|
||
|
<select ng-model="kind">
|
||
|
<option value="mysql+pymysql">MySQL</option>
|
||
|
<option value="postgresql">Postgres</option>
|
||
|
</select>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Database Server:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="server"
|
||
|
placeholder="The database server hostname"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Database Name:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="database"
|
||
|
placeholder="The name of the database on the server"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<tr>
|
||
|
<td>Username:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="username"
|
||
|
placeholder="Username for accessing the database"></span>
|
||
|
<div class="help-text">The user must have full access to the database</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Password:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="password"
|
||
|
placeholder="Password for accessing the database"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
<div class="co-panel-button-bar">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /Database -->
|
||
|
|
||
|
<!-- Redis -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<img src="/static/img/redis-small.png"> redis
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>A <a href="http://redis.io" target="_blank">redis</a> key-value store is required for real-time events and build logs.</p>
|
||
|
</div>
|
||
|
|
||
|
<table class="config-table">
|
||
|
<tr>
|
||
|
<td>Redis hostname:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="mapped.redis.hostname"
|
||
|
placeholder="The redis server hostname"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Redis port:</td>
|
||
|
<td>
|
||
|
<span class="config-numeric-field" binding="mapped.redis.port" default-value="6379"></span>
|
||
|
<div class="help-text">
|
||
|
Access to this port and hostname must be allowed from all hosts running
|
||
|
the enterprise registry
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Redis password:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="mapped.redis.password"
|
||
|
placeholder="Optional password for connecting to redis"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
<div class="co-panel-button-bar">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /Redis -->
|
||
|
|
||
|
<!-- Registry Storage -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-download"></i> Registry Storage
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>
|
||
|
Registry images can be stored either locally or in a remote storage system.
|
||
|
<strong>A remote storage system is required for high-avaliability systems.</strong>
|
||
|
</p>
|
||
|
|
||
|
<table class="config-table">
|
||
|
<tr>
|
||
|
<td class="non-input">Storage Engine:</td>
|
||
|
<td>
|
||
|
<select ng-model="config.DISTRIBUTED_STORAGE_CONFIG.local[0]">
|
||
|
<option value="LocalStorage">Locally mounted directory</option>
|
||
|
<option value="S3Storage">Amazon S3</option>
|
||
|
<option value="GoogleCloudStorage">Google Cloud Storage</option>
|
||
|
<option value="RadosGWStorage">Ceph Object Gateway (RADOS)</option>
|
||
|
</select>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<!-- Storage Path -->
|
||
|
<tr>
|
||
|
<td>Storage Path:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].storage_path"
|
||
|
placeholder="Path under the volume or bucket"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<!-- S3 -->
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'S3Storage'">
|
||
|
<td>Access Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].s3_access_key"
|
||
|
placeholder="AWS access key"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'S3Storage'">
|
||
|
<td>Secret Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].s3_secret_key"
|
||
|
placeholder="AWS secret key"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'S3Storage'">
|
||
|
<td>Bucket Name:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].s3_bucket"
|
||
|
placeholder="S3 bucket name"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<!-- GCS -->
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'GoogleCloudStorage'">
|
||
|
<td>Access Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].access_key"
|
||
|
placeholder="GCS access key"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'GoogleCloudStorage'">
|
||
|
<td>Secret Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].secret_key"
|
||
|
placeholder="GCS secret key"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'GoogleCloudStorage'">
|
||
|
<td>Bucket Name:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].bucket_name"
|
||
|
placeholder="GCS bucket name"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
<!-- RADOS -->
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'RadosGWStorage'">
|
||
|
<td>Hostname:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].hostname"
|
||
|
placeholder="RADOS Hostname"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'RadosGWStorage'">
|
||
|
<td>Is Secure:</td>
|
||
|
<td>
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.DISTRIBUTED_STORAGE_CONFIG.local[1].is_secure">Requires SSL
|
||
|
</label>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'RadosGWStorage'">
|
||
|
<td>Access Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].access_key"
|
||
|
placeholder="Access key"></span>
|
||
|
<div class="help-text">
|
||
|
See <a href="http://ceph.com/docs/master/radosgw/admin/" target="_blank">
|
||
|
RADOS Documentation
|
||
|
</a> for more information
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'RadosGWStorage'">
|
||
|
<td>Secret Key:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].secret_key"
|
||
|
placeholder="Secret key"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr ng-show="config.DISTRIBUTED_STORAGE_CONFIG.local[0] == 'RadosGWStorage'">
|
||
|
<td>Bucket Name:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field"
|
||
|
binding="config.DISTRIBUTED_STORAGE_CONFIG.local[1].bucket_name"
|
||
|
placeholder="Bucket name"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
</div>
|
||
|
<div class="co-panel-button-bar">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
|
||
|
</div>
|
||
|
</div>
|
||
|
|
||
|
<!-- E-mail -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-envelope"></i> E-mail
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>Valid e-mail server configuration is required for notification e-mails and the ability of
|
||
|
users to reset their passwords.</p>
|
||
|
</div>
|
||
|
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.FEATURE_MAILING">Enable E-mails
|
||
|
</label>
|
||
|
|
||
|
<table class="config-table" ng-show="config.FEATURE_MAILING">
|
||
|
<tr>
|
||
|
<td>SMTP Server:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.MAIL_SERVER"
|
||
|
placeholder="SMTP server for sending e-mail"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>SMTP Server Port:</td>
|
||
|
<td>
|
||
|
<span class="config-numeric-field" binding="config.MAIL_PORT"
|
||
|
default-value="587"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>TLS:</td>
|
||
|
<td>
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.MAIL_USE_TLS">Use TLS
|
||
|
</label>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Mail Sender:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.DEFAULT_MAIL_SENDER"
|
||
|
placeholder="E-mail address"></span>
|
||
|
<div class="help-text">
|
||
|
E-mail address from which all e-mails are sent. If not specified,
|
||
|
<code>support@quay.io</code> will be used.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Authentication:</td>
|
||
|
<td>
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="mapped.use_mail_auth">Requires Authentication
|
||
|
</label>
|
||
|
|
||
|
<table class="config-table" ng-show="mapped.use_mail_auth">
|
||
|
<tr>
|
||
|
<td>Username:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.MAIL_USERNAME"
|
||
|
placeholder="Username for authentication"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Password:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.MAIL_PASSWORD"
|
||
|
placeholder="Password for authentication"></span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
</td>
|
||
|
</tr>
|
||
|
|
||
|
</table>
|
||
|
<div class="co-panel-button-bar" ng-show="config.FEATURE_MAILING">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /E-mail -->
|
||
|
|
||
|
<!-- Authentication -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-users"></i> Authentication
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>
|
||
|
Authentication for the registry can be handled by either the registry itself or LDAP.
|
||
|
External authentication providers (such as Github) can be used on top of this choice.
|
||
|
</p>
|
||
|
</div>
|
||
|
|
||
|
<table class="config-table">
|
||
|
<tr>
|
||
|
<td class="non-input">Authentication:</td>
|
||
|
<td>
|
||
|
<select ng-model="config.AUTHENTICATION_TYPE">
|
||
|
<option value="Database">Local Database</option>
|
||
|
<option value="LDAP">LDAP</option>
|
||
|
</select>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
<table class="config-table" ng-show="config.AUTHENTICATION_TYPE == 'LDAP'">
|
||
|
<tr>
|
||
|
<td>LDAP URI:</td>
|
||
|
<td><span class="config-string-field" binding="config.LDAP_URI"></span></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Administrator DN:</td>
|
||
|
<td><span class="config-string-field" binding="config.LDAP_ADMIN_DN"></span></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Base DN:</td>
|
||
|
<td><span class="config-list-field" item-title="DN" binding="config.LDAP_BASE_DN"></span></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>Administrator Password:</td>
|
||
|
<td><span class="config-string-field" binding="config.LDAP_ADMIN_PASSWD"></span></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>E-mail Attribute:</td>
|
||
|
<td><span class="config-string-field" binding="config.LDAP_EMAIL_ATTR"></span></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>UID Attribute:</td>
|
||
|
<td><span class="config-string-field" binding="config.LDAP_UID_ATTR"></span></td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>User RDN:</td>
|
||
|
<td><span class="config-list-field" item-title="RDN" binding="config.LDAP_USER_RDN"></span></td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
<div class="co-panel-button-bar" ng-show="config.AUTHENTICATION_TYPE == 'LDAP'">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /Authentication -->
|
||
|
|
||
|
<!-- Github Authentication -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-github"></i> Github (Enterprise) Authentication
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>
|
||
|
If enabled, users can use Github or Github Enterprise to authenticate to the registry.
|
||
|
</p>
|
||
|
<p>
|
||
|
<strong>Note:</strong> A registered Github (Enterprise) OAuth application is required.
|
||
|
View instructions on how to
|
||
|
<a href="https://coreos.com/docs/enterprise-registry/github-auth/" target="_blank">
|
||
|
Create an OAuth Application in GitHub
|
||
|
</a>
|
||
|
</p>
|
||
|
</div>
|
||
|
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.FEATURE_GITHUB_LOGIN">Enable Github Authentication
|
||
|
</label>
|
||
|
|
||
|
<table class="config-table" ng-show="config.FEATURE_GITHUB_LOGIN">
|
||
|
<tr>
|
||
|
<td>Github Endpoint:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_LOGIN_CONFIG.GITHUB_ENDPOINT"
|
||
|
placeholder="The Github server">
|
||
|
</span>
|
||
|
<div class="help-text">
|
||
|
https://github.com/ for github.com. For Github enterprise, the internal Github endpoint.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>API Endpoint:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_LOGIN_CONFIG.API_ENDPOINT"
|
||
|
placeholder="API server endpoint">
|
||
|
</span>
|
||
|
<div class="help-text">
|
||
|
https://api.github.com/ for github.com. For Github Enterprise, leave empty.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>OAuth Client ID:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_LOGIN_CONFIG.CLIENT_ID">
|
||
|
</span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>OAuth Client Secret:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_LOGIN_CONFIG.CLIENT_SECRET">
|
||
|
</span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
<div class="co-panel-button-bar" ng-show="config.FEATURE_GITHUB_LOGIN">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /Github Authentication -->
|
||
|
|
||
|
<!-- Google Authentication -->
|
||
|
<div class="co-panel">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-google"></i> Google Authentication
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>
|
||
|
If enabled, users can use Google to authenticate to the registry.
|
||
|
</p>
|
||
|
<p>
|
||
|
<strong>Note:</strong> A registered Google OAuth application is required.
|
||
|
Visit the
|
||
|
<a href="https://console.developers.google.com" target="_blank">
|
||
|
Google Developer Console
|
||
|
</a>
|
||
|
to register an application.
|
||
|
</p>
|
||
|
</div>
|
||
|
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.FEATURE_GOOGLE_LOGIN">Enable Google Authentication
|
||
|
</label>
|
||
|
|
||
|
<table class="config-table" ng-show="config.FEATURE_GOOGLE_LOGIN">
|
||
|
<tr>
|
||
|
<td>OAuth Client ID:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GOOGLE_LOGIN_CONFIG.CLIENT_ID">
|
||
|
</span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>OAuth Client Secret:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GOOGLE_LOGIN_CONFIG.CLIENT_SECRET">
|
||
|
</span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
<div class="co-panel-button-bar" ng-show="config.FEATURE_GOOGLE_LOGIN">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /Google Authentication -->
|
||
|
|
||
|
|
||
|
<!-- Github Trigger -->
|
||
|
<div class="co-panel" ng-show="config.FEATURE_BUILD_SUPPORT">
|
||
|
<div class="co-panel-heading">
|
||
|
<i class="fa fa-github"></i> Github (Enterprise) Build Triggers
|
||
|
</div>
|
||
|
<div class="co-panel-body">
|
||
|
<div class="description">
|
||
|
<p>
|
||
|
If enabled, users can setup Github or Github Enterprise triggers to invoke Registry builds.
|
||
|
</p>
|
||
|
<p>
|
||
|
<strong>Note:</strong> A registered Github (Enterprise) OAuth application (<strong>separate from Github Authentication</strong>) is required.
|
||
|
View instructions on how to
|
||
|
<a href="https://coreos.com/docs/enterprise-registry/github-auth/" target="_blank">
|
||
|
Create an OAuth Application in GitHub
|
||
|
</a>
|
||
|
</p>
|
||
|
</div>
|
||
|
|
||
|
<label>
|
||
|
<input type="checkbox" ng-model="config.FEATURE_GITHUB_BUILD">Enable Github Triggers
|
||
|
</label>
|
||
|
|
||
|
<table class="config-table" ng-show="config.FEATURE_GITHUB_BUILD">
|
||
|
<tr>
|
||
|
<td>Github Endpoint:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_TRIGGER_CONFIG.GITHUB_ENDPOINT"
|
||
|
placeholder="The Github server">
|
||
|
</span>
|
||
|
<div class="help-text">
|
||
|
https://github.com/ for github.com. For Github enterprise, the internal Github endpoint.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>API Endpoint:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_TRIGGER_CONFIG.API_ENDPOINT"
|
||
|
placeholder="API server endpoint">
|
||
|
</span>
|
||
|
<div class="help-text">
|
||
|
https://api.github.com/ for github.com. For Github Enterprise, leave empty.
|
||
|
</div>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>OAuth Client ID:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_TRIGGER_CONFIG.CLIENT_ID">
|
||
|
</span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
<tr>
|
||
|
<td>OAuth Client Secret:</td>
|
||
|
<td>
|
||
|
<span class="config-string-field" binding="config.GITHUB_TRIGGER_CONFIG.CLIENT_SECRET">
|
||
|
</span>
|
||
|
</td>
|
||
|
</tr>
|
||
|
</table>
|
||
|
|
||
|
|
||
|
<div class="co-panel-button-bar" ng-show="config.FEATURE_GITHUB_BUILD">
|
||
|
<button class="btn btn-default"><i class="fa fa-sign-in"></i> Test Configuration</button>
|
||
|
</div>
|
||
|
</div>
|
||
|
</div> <!-- /Github Trigger -->
|
||
|
|
||
|
</div>
|