moved all backupable data to a separate directory

This commit is contained in:
Kasra Bigdeli
2018-12-04 23:21:25 -08:00
parent 7106bb1ac2
commit 4daa8dc01b
16 changed files with 157 additions and 151 deletions
+2 -2
View File
@@ -31,9 +31,9 @@ if (CaptainConstants.isDebug) {
app.use('*', function (req, res, next) {
res.setHeader('Access-Control-Allow-Origin', '*');
res.setHeader('Access-Control-Allow-Credentials', 'true');
res.setHeader('Access-Control-Allow-Headers', CaptainConstants.header.namespace +
res.setHeader('Access-Control-Allow-Headers', CaptainConstants.headerNamespace +
',' +
CaptainConstants.header.auth +
CaptainConstants.headerAuth +
',Content-Type');
next();
});
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -31,7 +31,7 @@ const DEFAULT_NGINX_CONFIG_FOR_APP = fs
class DataStore {
constructor(namespace) {
const data = new Configstore('captain-store', {}, {
configPath: CaptainConstants.captainRootDirectory + '/config.json',
configPath: CaptainConstants.captainDataDirectory + '/config.json',
});
this.data = data;
this.namespace = namespace;
+3 -3
View File
@@ -19,7 +19,7 @@ function injectGlobal() {
return function (req, res, next) {
const locals = res.locals;
locals.initialized = CaptainManager.get().isInitialized();
locals.namespace = req.header(CaptainConstants.header.namespace);
locals.namespace = req.header(CaptainConstants.headerNamespace);
locals.forceSsl = CaptainManager.get().getForceSslValue();
if (locals.namespace &&
locals.namespace !== CaptainConstants.rootNameSpace) {
@@ -40,7 +40,7 @@ function injectUser() {
}
const namespace = res.locals.namespace;
Authenticator.get(namespace)
.decodeAuthToken(req.header(CaptainConstants.header.auth) || '')
.decodeAuthToken(req.header(CaptainConstants.headerAuth) || '')
.then(function (userDecoded) {
if (userDecoded) {
const datastore = DataStoreProvider.getDataStore(namespace);
@@ -128,7 +128,7 @@ exports.injectUserForWebhook = injectUserForWebhook;
function injectUserUsingCookieDataOnly() {
return function (req, res, next) {
Authenticator.get(CaptainConstants.rootNameSpace)
.decodeAuthTokenFromCookies(req.cookies[CaptainConstants.header.cookieAuth])
.decodeAuthTokenFromCookies(req.cookies[CaptainConstants.headerCookieAuth])
.then(function (user) {
res.locals.user = user;
next();
+1 -1
View File
@@ -1 +1 @@
{"version":3,"file":"Injector.js","sourceRoot":"","sources":["../../src/injection/Injector.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"Injector.js","sourceRoot":"","sources":["../../src/injection/Injector.ts"],"names":[],"mappings":"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"}
+1 -1
View File
@@ -23,7 +23,7 @@ router.post('/', function (req, res, next) {
return Authenticator.get(namespace).getAuthTokenForCookies(password);
})
.then(function (cookieAuth) {
res.cookie(CaptainConstants.header.cookieAuth, cookieAuth);
res.cookie(CaptainConstants.headerCookieAuth, cookieAuth);
let baseApi = new BaseApi(ApiStatusCodes.STATUS_OK, 'Login succeeded');
baseApi.data = { token: authToken };
res.send(baseApi);
+1 -1
View File
@@ -1 +1 @@
{"version":3,"file":"LoginRouter.js","sourceRoot":"","sources":["../../src/routes/LoginRouter.ts"],"names":[],"mappings":";AAAA,mCAAmC;AACnC,0CAA0C;AAC1C,uDAAuD;AACvD,wDAAwD;AAExD,8DAA8D;AAC9D,sEAAsE;AAEtE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;AAE/B,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,UAAS,GAAG,EAAE,GAAG,EAAE,IAAI;IACpC,IAAI,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA;IAEtC,IAAI,CAAC,QAAQ,EAAE;QACX,IAAI,QAAQ,GAAG,IAAI,OAAO,CACtB,cAAc,CAAC,oBAAoB,EACnC,oBAAoB,CACvB,CAAA;QACD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAClB,OAAM;KACT;IAED,IAAI,SAAiB,CAAA;IAErB,MAAM,SAAS,GAAG,kBAAkB,CAAC,0BAA0B,CAAC,GAAG,CAAC;SAC/D,SAAS,CAAA;IAEd,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;SACvB,YAAY,CAAC,QAAQ,CAAC;SACtB,IAAI,CAAC,UAAS,KAAK;QAChB,SAAS,GAAG,KAAK,CAAA;QACjB,OAAO,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IACxE,CAAC,CAAC;SACD,IAAI,CAAC,UAAS,UAAU;QACrB,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAA;QAC1D,IAAI,OAAO,GAAG,IAAI,OAAO,CACrB,cAAc,CAAC,SAAS,EACxB,iBAAiB,CACpB,CAAA;QACD,OAAO,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;QACnC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC,CAAC;SACD,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;AACjD,CAAC,CAAC,CAAA;AAEF,iBAAS,MAAM,CAAA"}
{"version":3,"file":"LoginRouter.js","sourceRoot":"","sources":["../../src/routes/LoginRouter.ts"],"names":[],"mappings":";AAAA,mCAAmC;AACnC,0CAA0C;AAC1C,uDAAuD;AACvD,wDAAwD;AAExD,8DAA8D;AAC9D,sEAAsE;AAEtE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAA;AAE/B,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,UAAS,GAAG,EAAE,GAAG,EAAE,IAAI;IACpC,IAAI,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAA;IAEtC,IAAI,CAAC,QAAQ,EAAE;QACX,IAAI,QAAQ,GAAG,IAAI,OAAO,CACtB,cAAc,CAAC,oBAAoB,EACnC,oBAAoB,CACvB,CAAA;QACD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAClB,OAAM;KACT;IAED,IAAI,SAAiB,CAAA;IAErB,MAAM,SAAS,GAAG,kBAAkB,CAAC,0BAA0B,CAAC,GAAG,CAAC;SAC/D,SAAS,CAAA;IAEd,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC;SACvB,YAAY,CAAC,QAAQ,CAAC;SACtB,IAAI,CAAC,UAAS,KAAK;QAChB,SAAS,GAAG,KAAK,CAAA;QACjB,OAAO,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAA;IACxE,CAAC,CAAC;SACD,IAAI,CAAC,UAAS,UAAU;QACrB,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;QACzD,IAAI,OAAO,GAAG,IAAI,OAAO,CACrB,cAAc,CAAC,SAAS,EACxB,iBAAiB,CACpB,CAAA;QACD,OAAO,CAAC,IAAI,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,CAAA;QACnC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACrB,CAAC,CAAC;SACD,KAAK,CAAC,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;AACjD,CAAC,CAAC,CAAA;AAEF,iBAAS,MAAM,CAAA"}
+47 -46
View File
@@ -1,71 +1,72 @@
"use strict";
const fs = require("fs-extra");
const EnvVars = require("./EnvVars");
const CAPTAIN_ROOT_DIRECTORY = '/captain';
const CONSTANT_FILE_OVERRIDE = CAPTAIN_ROOT_DIRECTORY + '/constants.conf';
const CAPTAIN_ROOT_DIRECTORY_TEMP = CAPTAIN_ROOT_DIRECTORY + '/temp';
const CAPTAIN_ROOT_DIRECTORY_GENERATED = CAPTAIN_ROOT_DIRECTORY + '/generated';
const CAPTAIN_BASE_DIRECTORY = '/captain';
const CAPTAIN_DATA_DIRECTORY = +CAPTAIN_BASE_DIRECTORY + '/data'; // data that sits here can be backed up
const CAPTAIN_ROOT_DIRECTORY_TEMP = CAPTAIN_BASE_DIRECTORY + '/temp';
const CAPTAIN_ROOT_DIRECTORY_GENERATED = CAPTAIN_BASE_DIRECTORY + '/generated';
const CONSTANT_FILE_OVERRIDE = CAPTAIN_DATA_DIRECTORY + '/constants.json';
let data = {
// ******************** Global Constants *********************
apiVersion: 'v1',
version: '0.7.3',
isDebug: EnvVars.CAPTAIN_IS_DEBUG,
captainServiceExposedPort: 3000,
rootNameSpace: 'captain',
// *********************** Disk Paths ************************
dockerSocketPath: '/var/run/docker.sock',
sourcePathInContainer: '/usr/src/app',
nginxStaticRootDir: '/usr/share/nginx',
nginxDefaultHtmlDir: '/default',
letsEncryptEtcPathOnNginx: '/letencrypt/etc',
nginxSharedPathOnNginx: '/nginx-shared',
nginxDomainSpecificHtmlDir: '/domains',
captainConfirmationPath: '/.well-known/captain-identifier',
captainBaseDirectory: CAPTAIN_BASE_DIRECTORY,
captainRootDirectoryTemp: CAPTAIN_ROOT_DIRECTORY_TEMP,
captainRawSourceDirectoryBase: CAPTAIN_ROOT_DIRECTORY_TEMP + '/image_raw',
captainRootDirectoryGenerated: CAPTAIN_ROOT_DIRECTORY_GENERATED,
registryAuthPathOnHost: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/registry-auth',
captainStaticFilesDir: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/static',
baseNginxConfigPath: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/nginx.conf',
rootNginxConfigPath: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d/captain-root',
perAppNginxConfigPathBase: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d',
captainDataDirectory: CAPTAIN_DATA_DIRECTORY,
letsEncryptLibPath: CAPTAIN_DATA_DIRECTORY + '/letencrypt/lib',
letsEncryptEtcPath: CAPTAIN_DATA_DIRECTORY + '/letencrypt/etc',
registryPathOnHost: CAPTAIN_DATA_DIRECTORY + '/registry',
nginxSharedPathOnHost: CAPTAIN_DATA_DIRECTORY + '/nginx-shared',
debugSourceDirectory: '',
// **************** DockerHub Image Names ********************
publishedNameOnDockerHub: 'dockersaturn/captainduckduck',
certbotImageName: 'dockersaturn/certbot-sleeping:v0.17.0',
netDataImageName: 'titpetric/netdata:1.8',
registryImageName: 'registry:2',
appPlaceholderImageName: 'dockersaturn/app-placeholder:latest',
nginxImageName: 'nginx',
// ********************* Local Docker Constants ************************
defaultEmail: 'runner@captainduckduck.com',
defaultMaxLogSize: '512m',
buildLogSize: 50,
isDebug: EnvVars.CAPTAIN_IS_DEBUG,
version: '0.7.3',
captainSaltSecretKey: 'captain-salt',
nginxServiceName: 'captain-nginx',
nginxPortNumber: 80,
rootNameSpace: 'captain',
captainServiceName: 'captain-captain',
certbotServiceName: 'captain-certbot',
netDataContainerName: 'captain-netdata-container',
netDataRelativePath: '/net-data-monitor',
registryServiceName: 'captain-registry',
captainNetworkName: 'captain-overlay-network',
captainRegistryUsername: 'captain',
// ********************* HTTP Related Constants ************************
preCheckForWildCard: true,
nginxPortNumber: 80,
registrySubDomainPort: 996,
netDataRelativePath: '/net-data-monitor',
healthCheckEndPoint: '/checkhealth',
captainSubDomain: 'captain',
registrySubDomain: 'registry',
registryServiceName: 'captain-registry',
registrySubDomainPort: 996,
captainRegistryUsername: 'captain',
captainNetworkName: 'captain-overlay-network',
header: {
cookieAuth: 'captainCookieAuth',
auth: 'x-captain-auth',
namespace: 'x-namespace',
},
healthCheckEndPoint: '/checkhealth',
prefixManagerNode: 'captainManager',
prefixWorkerNode: 'captainWorker',
dockerSocketPath: '/var/run/docker.sock',
sourcePathInContainer: '/usr/src/app',
captainServiceExposedPort: 3000,
nginxStaticRootDir: '/usr/share/nginx',
nginxDefaultHtmlDir: '/default',
nginxDomainSpecificHtmlDir: '/domains',
captainConfirmationPath: '/.well-known/captain-identifier',
captainRootDirectory: CAPTAIN_ROOT_DIRECTORY,
captainRootDirectoryTemp: CAPTAIN_ROOT_DIRECTORY_TEMP,
captainRootDirectoryGenerated: CAPTAIN_ROOT_DIRECTORY_GENERATED,
letsEncryptLibPath: CAPTAIN_ROOT_DIRECTORY + '/letencrypt/lib',
letsEncryptEtcPath: CAPTAIN_ROOT_DIRECTORY + '/letencrypt/etc',
registryPathOnHost: CAPTAIN_ROOT_DIRECTORY + '/registry',
registryAuthPathOnHost: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/registry-auth',
nginxSharedPathOnHost: CAPTAIN_ROOT_DIRECTORY + '/nginx-shared',
letsEncryptEtcPathOnNginx: '/letencrypt/etc',
nginxSharedPathOnNginx: '/nginx-shared',
captainStaticFilesDir: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/static',
captainRawSourceDirectoryBase: CAPTAIN_ROOT_DIRECTORY_TEMP + '/image_raw',
captainTarImagesDir: CAPTAIN_ROOT_DIRECTORY_TEMP + '/img_tar',
captainDefinitionTempDir: CAPTAIN_ROOT_DIRECTORY_TEMP + '/captain_definition',
baseNginxConfigPath: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/nginx.conf',
rootNginxConfigPath: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d/captain-root',
perAppNginxConfigPathBase: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d',
debugSourceDirectory: '',
headerCookieAuth: 'captainCookieAuth',
headerAuth: 'x-captain-auth',
headerNamespace: 'x-namespace',
};
let overridingValues = fs.readJsonSync(CONSTANT_FILE_OVERRIDE, {
throws: false,
@@ -1 +1 @@
{"version":3,"file":"CaptainConstants.js","sourceRoot":"","sources":["../../src/utils/CaptainConstants.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"CaptainConstants.js","sourceRoot":"","sources":["../../src/utils/CaptainConstants.ts"],"names":[],"mappings":"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"}
+2 -2
View File
@@ -202,8 +202,8 @@ function install() {
.then(function (nodeId) {
let volumeToMount = [
{
hostPath: CaptainConstants.captainRootDirectory,
containerPath: CaptainConstants.captainRootDirectory,
hostPath: CaptainConstants.captainBaseDirectory,
containerPath: CaptainConstants.captainBaseDirectory,
},
];
let env = [];
+2 -2
View File
@@ -41,9 +41,9 @@ if (CaptainConstants.isDebug) {
res.setHeader('Access-Control-Allow-Credentials', 'true')
res.setHeader(
'Access-Control-Allow-Headers',
CaptainConstants.header.namespace +
CaptainConstants.headerNamespace +
',' +
CaptainConstants.header.auth +
CaptainConstants.headerAuth +
',Content-Type'
)
next()
+1 -1
View File
@@ -45,7 +45,7 @@ class DataStore {
{},
{
configPath:
CaptainConstants.captainRootDirectory + '/config.json',
CaptainConstants.captainDataDirectory + '/config.json',
}
)
+3 -3
View File
@@ -24,7 +24,7 @@ export function injectGlobal() {
const locals = res.locals
locals.initialized = CaptainManager.get().isInitialized()
locals.namespace = req.header(CaptainConstants.header.namespace)
locals.namespace = req.header(CaptainConstants.headerNamespace)
locals.forceSsl = CaptainManager.get().getForceSslValue()
if (
@@ -54,7 +54,7 @@ export function injectUser() {
const namespace = res.locals.namespace
Authenticator.get(namespace)
.decodeAuthToken(req.header(CaptainConstants.header.auth) || '')
.decodeAuthToken(req.header(CaptainConstants.headerAuth) || '')
.then(function(userDecoded) {
if (userDecoded) {
const datastore = DataStoreProvider.getDataStore(namespace)
@@ -167,7 +167,7 @@ export function injectUserUsingCookieDataOnly() {
return function(req: Request, res: Response, next: NextFunction) {
Authenticator.get(CaptainConstants.rootNameSpace)
.decodeAuthTokenFromCookies(
req.cookies[CaptainConstants.header.cookieAuth]
req.cookies[CaptainConstants.headerCookieAuth]
)
.then(function(user) {
res.locals.user = user
+1 -1
View File
@@ -32,7 +32,7 @@ router.post('/', function(req, res, next) {
return Authenticator.get(namespace).getAuthTokenForCookies(password)
})
.then(function(cookieAuth) {
res.cookie(CaptainConstants.header.cookieAuth, cookieAuth)
res.cookie(CaptainConstants.headerCookieAuth, cookieAuth)
let baseApi = new BaseApi(
ApiStatusCodes.STATUS_OK,
'Login succeeded'
+88 -83
View File
@@ -1,14 +1,78 @@
import fs = require('fs-extra')
import EnvVars = require('./EnvVars')
const CAPTAIN_ROOT_DIRECTORY = '/captain'
const CONSTANT_FILE_OVERRIDE = CAPTAIN_ROOT_DIRECTORY + '/constants.conf'
const CAPTAIN_ROOT_DIRECTORY_TEMP = CAPTAIN_ROOT_DIRECTORY + '/temp'
const CAPTAIN_ROOT_DIRECTORY_GENERATED = CAPTAIN_ROOT_DIRECTORY + '/generated'
const CAPTAIN_BASE_DIRECTORY = '/captain'
const CAPTAIN_DATA_DIRECTORY = +CAPTAIN_BASE_DIRECTORY + '/data' // data that sits here can be backed up
const CAPTAIN_ROOT_DIRECTORY_TEMP = CAPTAIN_BASE_DIRECTORY + '/temp'
const CAPTAIN_ROOT_DIRECTORY_GENERATED = CAPTAIN_BASE_DIRECTORY + '/generated'
const CONSTANT_FILE_OVERRIDE = CAPTAIN_DATA_DIRECTORY + '/constants.json'
let data = {
// ******************** Global Constants *********************
apiVersion: 'v1',
version: '0.7.3',
isDebug: EnvVars.CAPTAIN_IS_DEBUG,
captainServiceExposedPort: 3000,
rootNameSpace: 'captain',
// *********************** Disk Paths ************************
dockerSocketPath: '/var/run/docker.sock',
sourcePathInContainer: '/usr/src/app',
nginxStaticRootDir: '/usr/share/nginx',
nginxDefaultHtmlDir: '/default',
letsEncryptEtcPathOnNginx: '/letencrypt/etc',
nginxSharedPathOnNginx: '/nginx-shared',
nginxDomainSpecificHtmlDir: '/domains',
captainConfirmationPath: '/.well-known/captain-identifier',
captainBaseDirectory: CAPTAIN_BASE_DIRECTORY,
captainRootDirectoryTemp: CAPTAIN_ROOT_DIRECTORY_TEMP,
captainRawSourceDirectoryBase: CAPTAIN_ROOT_DIRECTORY_TEMP + '/image_raw',
captainRootDirectoryGenerated: CAPTAIN_ROOT_DIRECTORY_GENERATED,
registryAuthPathOnHost: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/registry-auth', // this is a file
captainStaticFilesDir: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/static',
baseNginxConfigPath: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/nginx.conf',
rootNginxConfigPath:
CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d/captain-root',
perAppNginxConfigPathBase:
CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d',
captainDataDirectory: CAPTAIN_DATA_DIRECTORY,
letsEncryptLibPath: CAPTAIN_DATA_DIRECTORY + '/letencrypt/lib',
letsEncryptEtcPath: CAPTAIN_DATA_DIRECTORY + '/letencrypt/etc',
registryPathOnHost: CAPTAIN_DATA_DIRECTORY + '/registry',
nginxSharedPathOnHost: CAPTAIN_DATA_DIRECTORY + '/nginx-shared',
debugSourceDirectory: '', // Only used in debug mode
// **************** DockerHub Image Names ********************
publishedNameOnDockerHub: 'dockersaturn/captainduckduck',
certbotImageName: 'dockersaturn/certbot-sleeping:v0.17.0',
@@ -21,110 +85,51 @@ let data = {
nginxImageName: 'nginx',
// ********************* Local Docker Constants ************************
defaultEmail: 'runner@captainduckduck.com',
defaultMaxLogSize: '512m',
buildLogSize: 50,
isDebug: EnvVars.CAPTAIN_IS_DEBUG,
version: '0.7.3',
captainSaltSecretKey: 'captain-salt',
nginxServiceName: 'captain-nginx',
nginxPortNumber: 80,
rootNameSpace: 'captain',
captainServiceName: 'captain-captain',
certbotServiceName: 'captain-certbot',
netDataContainerName: 'captain-netdata-container',
netDataRelativePath: '/net-data-monitor',
registryServiceName: 'captain-registry',
captainNetworkName: 'captain-overlay-network',
captainRegistryUsername: 'captain',
// ********************* HTTP Related Constants ************************
preCheckForWildCard: true,
nginxPortNumber: 80,
registrySubDomainPort: 996,
netDataRelativePath: '/net-data-monitor',
healthCheckEndPoint: '/checkhealth',
captainSubDomain: 'captain',
registrySubDomain: 'registry',
registryServiceName: 'captain-registry',
headerCookieAuth: 'captainCookieAuth',
registrySubDomainPort: 996,
headerAuth: 'x-captain-auth',
captainRegistryUsername: 'captain',
captainNetworkName: 'captain-overlay-network',
header: {
cookieAuth: 'captainCookieAuth',
auth: 'x-captain-auth',
namespace: 'x-namespace',
},
healthCheckEndPoint: '/checkhealth',
prefixManagerNode: 'captainManager',
prefixWorkerNode: 'captainWorker',
dockerSocketPath: '/var/run/docker.sock',
sourcePathInContainer: '/usr/src/app',
captainServiceExposedPort: 3000,
nginxStaticRootDir: '/usr/share/nginx',
nginxDefaultHtmlDir: '/default',
nginxDomainSpecificHtmlDir: '/domains',
captainConfirmationPath: '/.well-known/captain-identifier',
captainRootDirectory: CAPTAIN_ROOT_DIRECTORY,
captainRootDirectoryTemp: CAPTAIN_ROOT_DIRECTORY_TEMP,
captainRootDirectoryGenerated: CAPTAIN_ROOT_DIRECTORY_GENERATED,
letsEncryptLibPath: CAPTAIN_ROOT_DIRECTORY + '/letencrypt/lib',
letsEncryptEtcPath: CAPTAIN_ROOT_DIRECTORY + '/letencrypt/etc',
registryPathOnHost: CAPTAIN_ROOT_DIRECTORY + '/registry',
registryAuthPathOnHost: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/registry-auth', // this is a file
nginxSharedPathOnHost: CAPTAIN_ROOT_DIRECTORY + '/nginx-shared',
letsEncryptEtcPathOnNginx: '/letencrypt/etc',
nginxSharedPathOnNginx: '/nginx-shared',
captainStaticFilesDir: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/static',
captainRawSourceDirectoryBase: CAPTAIN_ROOT_DIRECTORY_TEMP + '/image_raw',
captainTarImagesDir: CAPTAIN_ROOT_DIRECTORY_TEMP + '/img_tar',
captainDefinitionTempDir:
CAPTAIN_ROOT_DIRECTORY_TEMP + '/captain_definition',
baseNginxConfigPath: CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/nginx.conf',
rootNginxConfigPath:
CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d/captain-root',
perAppNginxConfigPathBase:
CAPTAIN_ROOT_DIRECTORY_GENERATED + '/nginx/conf.d',
debugSourceDirectory: '', // Only used in debug mode
headerNamespace: 'x-namespace',
}
let overridingValues = fs.readJsonSync(CONSTANT_FILE_OVERRIDE, {
+2 -2
View File
@@ -251,8 +251,8 @@ export function install() {
.then(function(nodeId: string) {
let volumeToMount = [
{
hostPath: CaptainConstants.captainRootDirectory,
containerPath: CaptainConstants.captainRootDirectory,
hostPath: CaptainConstants.captainBaseDirectory,
containerPath: CaptainConstants.captainBaseDirectory,
},
]