Follow

Training Vault Documentation

Avatar

 

Installation

Prerequisites

  1. MySQL >= 8.0 (or compatible)

Installation Instructions

  1. Extract release bundle.

  2. Copy config.gcfg.template to config.gcfg. Customize appropriately.

  3. Create the storage location as specified in the configuration.

  4. Create your first organization:

    ./trainingvault.amd64 org create [short name] [full name]

  5. Create your first admin user for your first organization:

    ./trainingvault.amd64 user create [org short name] [username] [password] [email]

  6. Install as a service (usually requires root):

    sudo ./trainingvault.amd64 service install

  7. Start the service (OS-specific). Alternatively, if you’d like to see the output directly, the application can be run with no parameters to run the server in the foreground.

 

Configuration Options

Sample Configuration File

[deploy]
listen = :3443
publicContentHttpsUrl = https://127.0.0.1:3443
publicContentHttpUrl = http://127.0.0.1:3443
logfile = ./tv.log

[api]
jwtSecret = placeyourcustomsecrethere1234567890

[system]
;zipFixType = cli
;zipBinary = /usr/bin/zip
enableOldScoDirectoryMode = false
enableOldLicenseCheckMode = false
defaultStubMode = 3  ; 1 = old stub mode (relies on external player, no standard switching), 3 = new stub mode (internal player, standard switching)

[database]
dbtype = mssql ; or mysql
host = 127.0.0.1
username = sa
password =
db = trainingvault
migrations = true
debug = true

[webhooks]
dataupdateurl =

[services]
registration = false

[storage]
type = local  ; or aws
localStoragePath = ../_content
debug =

;[aws]
;accessKeyId =
;secretAccessKey =
;bucketname = some-bucket-name
;bucketregion = us-east-2

AWS S3 Configuration

When using S3 as a storage backend, you’ll need an IAM policy with the following bucket and object permissions:

  • Bucket-level permissions

    • ListAllMyBuckets

    • ListBucket

    • ListBucketMultipartUploads

  • Object-level permissions

    • AbortMultipartUpload

    • DeleteObject

    • DeleteObjectVersion

    • DeleteObjectVersionTagging

    • GetObject

    • GetObjectAcl

    • GetObjectVersion

    • GetObjectVersionAcl

    • GetObjectVersionTagging

    • ListMultipartUploadParts

    • PutObject

    • PutObjectAcl

    • PutObjectVersionAcl

    • PutObjectVersionTagging

This list may not be comprehensive, as you may be doing additional things with the bucket that will require custom permissions, such as kms:Decrypt.

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request
Powered by Zendesk