mirror of
https://github.com/nextcloud/docker.git
synced 2025-07-23 07:38:06 +02:00
Compare commits
4 commits
e648c49c12
...
173ab1a8ea
Author | SHA1 | Date | |
---|---|---|---|
|
173ab1a8ea | ||
|
2f4de23ea1 | ||
|
1a0fb1bfc2 | ||
|
b617bfc7a0 |
51 changed files with 299 additions and 330 deletions
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
|
@ -6,13 +6,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'sqlite';
|
$AUTOCONFIG['dbtype'] = 'sqlite';
|
||||||
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('SQLITE_DATABASE');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('MYSQL_DATABASE_FILE') && getenv('MYSQL_USER_FILE') && getenv('MYSQL_PASSWORD_FILE') && getenv('MYSQL_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('MYSQL_DATABASE_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('MYSQL_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('MYSQL_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
} elseif (getenv('MYSQL_DATABASE') && getenv('MYSQL_USER') && getenv('MYSQL_PASSWORD') && getenv('MYSQL_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'mysql';
|
$AUTOCONFIG['dbtype'] = 'mysql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
$AUTOCONFIG['dbname'] = getenv('MYSQL_DATABASE');
|
||||||
|
@ -20,13 +13,6 @@ if (getenv('SQLITE_DATABASE')) {
|
||||||
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
$AUTOCONFIG['dbpass'] = getenv('MYSQL_PASSWORD');
|
||||||
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
$AUTOCONFIG['dbhost'] = getenv('MYSQL_HOST');
|
||||||
$autoconfig_enabled = true;
|
$autoconfig_enabled = true;
|
||||||
} elseif (getenv('POSTGRES_DB_FILE') && getenv('POSTGRES_USER_FILE') && getenv('POSTGRES_PASSWORD_FILE') && getenv('POSTGRES_HOST')) {
|
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
|
||||||
$AUTOCONFIG['dbname'] = trim(file_get_contents(getenv('POSTGRES_DB_FILE')));
|
|
||||||
$AUTOCONFIG['dbuser'] = trim(file_get_contents(getenv('POSTGRES_USER_FILE')));
|
|
||||||
$AUTOCONFIG['dbpass'] = trim(file_get_contents(getenv('POSTGRES_PASSWORD_FILE')));
|
|
||||||
$AUTOCONFIG['dbhost'] = getenv('POSTGRES_HOST');
|
|
||||||
$autoconfig_enabled = true;
|
|
||||||
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
} elseif (getenv('POSTGRES_DB') && getenv('POSTGRES_USER') && getenv('POSTGRES_PASSWORD') && getenv('POSTGRES_HOST')) {
|
||||||
$AUTOCONFIG['dbtype'] = 'pgsql';
|
$AUTOCONFIG['dbtype'] = 'pgsql';
|
||||||
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
$AUTOCONFIG['dbname'] = getenv('POSTGRES_DB');
|
||||||
|
|
|
@ -5,7 +5,7 @@ if (getenv('REDIS_HOST')) {
|
||||||
'memcache.locking' => '\OC\Memcache\Redis',
|
'memcache.locking' => '\OC\Memcache\Redis',
|
||||||
'redis' => array(
|
'redis' => array(
|
||||||
'host' => getenv('REDIS_HOST'),
|
'host' => getenv('REDIS_HOST'),
|
||||||
'password' => getenv('REDIS_HOST_PASSWORD_FILE') ? trim(file_get_contents(getenv('REDIS_HOST_PASSWORD_FILE'))) : (string) getenv('REDIS_HOST_PASSWORD'),
|
'password' => (string) getenv('REDIS_HOST_PASSWORD'),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
@ -24,25 +24,19 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
$CONFIG['objectstore']['arguments']['key'] = getenv('OBJECTSTORE_S3_KEY');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['key'] = '';
|
$CONFIG['objectstore']['arguments']['key'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SECRET_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SECRET')) {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SECRET_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SECRET')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
$CONFIG['objectstore']['arguments']['secret'] = getenv('OBJECTSTORE_S3_SECRET');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['objectstore']['arguments']['secret'] = '';
|
$CONFIG['objectstore']['arguments']['secret'] = '';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')) {
|
if (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = trim(file_get_contents(getenv('OBJECTSTORE_S3_SSE_C_KEY_FILE')));
|
|
||||||
} elseif (getenv('OBJECTSTORE_S3_SSE_C_KEY')) {
|
|
||||||
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
$CONFIG['objectstore']['arguments']['sse_c_key'] = getenv('OBJECTSTORE_S3_SSE_C_KEY');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,16 +5,14 @@ if (getenv('SMTP_HOST') && getenv('MAIL_FROM_ADDRESS') && getenv('MAIL_DOMAIN'))
|
||||||
'mail_smtphost' => getenv('SMTP_HOST'),
|
'mail_smtphost' => getenv('SMTP_HOST'),
|
||||||
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
'mail_smtpport' => getenv('SMTP_PORT') ?: (getenv('SMTP_SECURE') ? 465 : 25),
|
||||||
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
'mail_smtpsecure' => getenv('SMTP_SECURE') ?: '',
|
||||||
'mail_smtpauth' => getenv('SMTP_NAME') && (getenv('SMTP_PASSWORD') || getenv('SMTP_PASSWORD_FILE')),
|
'mail_smtpauth' => getenv('SMTP_NAME') && getenv('SMTP_PASSWORD'),
|
||||||
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
'mail_smtpauthtype' => getenv('SMTP_AUTHTYPE') ?: 'LOGIN',
|
||||||
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
'mail_smtpname' => getenv('SMTP_NAME') ?: '',
|
||||||
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
'mail_from_address' => getenv('MAIL_FROM_ADDRESS'),
|
||||||
'mail_domain' => getenv('MAIL_DOMAIN'),
|
'mail_domain' => getenv('MAIL_DOMAIN'),
|
||||||
);
|
);
|
||||||
|
|
||||||
if (getenv('SMTP_PASSWORD_FILE')) {
|
if (getenv('SMTP_PASSWORD')) {
|
||||||
$CONFIG['mail_smtppassword'] = trim(file_get_contents(getenv('SMTP_PASSWORD_FILE')));
|
|
||||||
} elseif (getenv('SMTP_PASSWORD')) {
|
|
||||||
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
$CONFIG['mail_smtppassword'] = getenv('SMTP_PASSWORD');
|
||||||
} else {
|
} else {
|
||||||
$CONFIG['mail_smtppassword'] = '';
|
$CONFIG['mail_smtppassword'] = '';
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
19
README.md
19
README.md
|
@ -1,3 +1,11 @@
|
||||||
|

|
||||||
|
[](https://github.com/nextcloud/docker/releases/)
|
||||||
|
[](https://nextcloud.com/changelog/)
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
# What is Nextcloud?
|
# What is Nextcloud?
|
||||||
|
|
||||||
A safe home for all your data. Access & share your files, calendars, contacts, mail & more from any device, on your terms.
|
A safe home for all your data. Access & share your files, calendars, contacts, mail & more from any device, on your terms.
|
||||||
|
@ -19,6 +27,9 @@ The second option is a `fpm` container. It is based on the [php-fpm](https://hub
|
||||||
|
|
||||||
Most Nextcloud Server administrative matters are covered in the official [Nextcloud Admin Manual](https://docs.nextcloud.com/server/latest/admin_manual/) or [other official Nextcloud documentation](https://docs.nextcloud.com) (which are all routinely updated).
|
Most Nextcloud Server administrative matters are covered in the official [Nextcloud Admin Manual](https://docs.nextcloud.com/server/latest/admin_manual/) or [other official Nextcloud documentation](https://docs.nextcloud.com) (which are all routinely updated).
|
||||||
|
|
||||||
|
[](https://help.nextcloud.com/)
|
||||||
|
[](https://help.nextcloud.com/)
|
||||||
|
|
||||||
**If you have any problems or usage questions while using the image, please ask for assistance on the [Nextcloud Community Help Forum](https://help.nextcloud.com)** rather than reporting them as "bugs" (unless they are bugs of course). This helps the
|
**If you have any problems or usage questions while using the image, please ask for assistance on the [Nextcloud Community Help Forum](https://help.nextcloud.com)** rather than reporting them as "bugs" (unless they are bugs of course). This helps the
|
||||||
maintainers (who are volunteers) remain focused on making the image better (rather than responding solely to one-on-one support issues). (Tip: Some of the maintainers are also regular responders to help requests
|
maintainers (who are volunteers) remain focused on making the image better (rather than responding solely to one-on-one support issues). (Tip: Some of the maintainers are also regular responders to help requests
|
||||||
on the [community help forum](https://help.nextcloud.com/).)
|
on the [community help forum](https://help.nextcloud.com/).)
|
||||||
|
@ -732,8 +743,16 @@ If there is a relevant existing open issue, you can either add to the discussion
|
||||||
|
|
||||||
If you believe you've found a new bug, please create a new Issue so that others can try to reproduce it and remediation can be tracked.
|
If you believe you've found a new bug, please create a new Issue so that others can try to reproduce it and remediation can be tracked.
|
||||||
|
|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|

|
||||||
|
|
||||||
**If you have any problems or usage questions while using the image, please ask for assistance on the [Nextcloud Community Help Forum](https://help.nextcloud.com)** rather than reporting them as "bugs" (unless they really are bugs of course). This helps the
|
**If you have any problems or usage questions while using the image, please ask for assistance on the [Nextcloud Community Help Forum](https://help.nextcloud.com)** rather than reporting them as "bugs" (unless they really are bugs of course). This helps the
|
||||||
maintainers (who are volunteers) remain focused on making the image better (rather than responding solely to one-on-one support issues). (Tip: Some of the maintainers are also regular responders to help requests
|
maintainers (who are volunteers) remain focused on making the image better (rather than responding solely to one-on-one support issues). (Tip: Some of the maintainers are also regular responders to help requests
|
||||||
on the [Nextcloud Community Help Forum](https://help.nextcloud.com).)
|
on the [Nextcloud Community Help Forum](https://help.nextcloud.com).)
|
||||||
|
|
||||||
|
[](https://help.nextcloud.com/)
|
||||||
|
[](https://help.nextcloud.com/)
|
||||||
|
|
||||||
Most Nextcloud Server matters are covered in the official [Nextcloud Admin Manual](https://docs.nextcloud.com/server/latest/admin_manual/) or the [other official Nextcloud documentation](https://docs.nextcloud.com) (which are routinely updated).
|
Most Nextcloud Server matters are covered in the official [Nextcloud Admin Manual](https://docs.nextcloud.com/server/latest/admin_manual/) or the [other official Nextcloud documentation](https://docs.nextcloud.com) (which are routinely updated).
|
||||||
|
|
|
@ -63,14 +63,16 @@ file_env() {
|
||||||
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
local varValue=$(env | grep -E "^${var}=" | sed -E -e "s/^${var}=//")
|
||||||
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
local fileVarValue=$(env | grep -E "^${fileVar}=" | sed -E -e "s/^${fileVar}=//")
|
||||||
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
if [ -n "${varValue}" ] && [ -n "${fileVarValue}" ]; then
|
||||||
echo >&2 "error: both $var and $fileVar are set (but are exclusive)"
|
echo "Warning: both $var and $fileVar are set ($fileVar takes precedence)"
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
if [ -n "${varValue}" ]; then
|
if [ -n "${fileVarValue}" ]; then
|
||||||
export "$var"="${varValue}"
|
echo "note: taking ${fileVar} file for ${var} value"
|
||||||
elif [ -n "${fileVarValue}" ]; then
|
|
||||||
export "$var"="$(cat "${fileVarValue}")"
|
export "$var"="$(cat "${fileVarValue}")"
|
||||||
|
elif [ -n "${varValue}" ]; then
|
||||||
|
echo "note: using ${var} variable for ${var} value"
|
||||||
|
export "$var"="${varValue}"
|
||||||
elif [ -n "${def}" ]; then
|
elif [ -n "${def}" ]; then
|
||||||
|
echo "note: using invoked definition for ${var} value"
|
||||||
export "$var"="$def"
|
export "$var"="$def"
|
||||||
fi
|
fi
|
||||||
unset "$fileVar"
|
unset "$fileVar"
|
||||||
|
@ -82,6 +84,21 @@ if expr "$1" : "apache" 1>/dev/null; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# All possible content secrets to variable
|
||||||
|
file_env NEXTCLOUD_ADMIN_PASSWORD
|
||||||
|
file_env NEXTCLOUD_ADMIN_USER
|
||||||
|
file_env MYSQL_DATABASE
|
||||||
|
file_env MYSQL_PASSWORD
|
||||||
|
file_env MYSQL_USER
|
||||||
|
file_env POSTGRES_DB
|
||||||
|
file_env POSTGRES_PASSWORD
|
||||||
|
file_env POSTGRES_USER
|
||||||
|
file_env REDIS_HOST_PASSWORD
|
||||||
|
file_env SMTP_PASSWORD
|
||||||
|
file_env OBJECTSTORE_S3_KEY
|
||||||
|
file_env OBJECTSTORE_S3_SECRET
|
||||||
|
file_env OBJECTSTORE_S3_SSE_C_KEY
|
||||||
|
|
||||||
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
if expr "$1" : "apache" 1>/dev/null || [ "$1" = "php-fpm" ] || [ "${NEXTCLOUD_UPDATE:-0}" -eq 1 ]; then
|
||||||
uid="$(id -u)"
|
uid="$(id -u)"
|
||||||
gid="$(id -g)"
|
gid="$(id -g)"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue