mirror of
https://github.com/EvernodeXRPL/sashimono.git
synced 2026-04-29 15:38:00 +00:00
Private docker registry enhancements. (#142)
Got private docker registry working without secure mode. Feature disabled by default.
This commit is contained in:
15
src/conf.cpp
15
src/conf.cpp
@@ -33,7 +33,7 @@ namespace conf
|
||||
* Create config here.
|
||||
* @return 0 for success. -1 for failure.
|
||||
*/
|
||||
int create(std::string_view host_addr, std::string_view registry_addr, const size_t inst_count,
|
||||
int create(std::string_view host_addr, const uint16_t docker_registry_port, const size_t inst_count,
|
||||
const size_t cpu_us, const size_t ram_kbytes, const size_t swap_kbytes, const size_t disk_kbytes)
|
||||
{
|
||||
if (util::is_file_exists(ctx.config_file))
|
||||
@@ -69,9 +69,10 @@ namespace conf
|
||||
cfg.system.max_cpu_us = !cpu_us ? 900000 : cpu_us; // Total CPU allocation out of 1000000 microsec (1 sec).
|
||||
cfg.system.max_storage_kbytes = !disk_kbytes ? 5242880 : disk_kbytes;
|
||||
|
||||
const std::string img_prefix = registry_addr.empty() ? "evernodedev" : std::string(registry_addr);
|
||||
const std::string img_prefix = "evernodedev";
|
||||
cfg.docker.images["hp.latest-ubt.20.04"] = img_prefix + "/sashimono:hp.latest-ubt.20.04";
|
||||
cfg.docker.images["hp.latest-ubt.20.04-njs.16"] = img_prefix + "/sashimono:hp.latest-ubt.20.04-njs.16";
|
||||
cfg.docker.registry_port = docker_registry_port;
|
||||
|
||||
cfg.log.max_file_count = 50;
|
||||
cfg.log.max_mbytes_per_file = 10;
|
||||
@@ -269,6 +270,9 @@ namespace conf
|
||||
|
||||
for (const auto &elem : docker["images"].object_range())
|
||||
cfg.docker.images[elem.key()] = elem.value().as<std::string>();
|
||||
|
||||
if (docker.contains("registry_port"))
|
||||
cfg.docker.registry_port = docker["registry_port"].as<uint16_t>();
|
||||
}
|
||||
catch (const std::exception &e)
|
||||
{
|
||||
@@ -300,6 +304,10 @@ namespace conf
|
||||
}
|
||||
}
|
||||
|
||||
// If docker registry port is 0, we assume there's no private docker registry.
|
||||
if (cfg.docker.registry_port > 0)
|
||||
cfg.docker.registry_address = cfg.hp.host_address + ":" + std::to_string(cfg.docker.registry_port);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -346,6 +354,7 @@ namespace conf
|
||||
for (const auto &[key, name] : cfg.docker.images)
|
||||
images.insert_or_assign(key, name);
|
||||
docker_config.insert_or_assign("images", images);
|
||||
docker_config.insert_or_assign("registry_port", cfg.docker.registry_port);
|
||||
|
||||
d.insert_or_assign("docker", docker_config);
|
||||
}
|
||||
@@ -412,7 +421,7 @@ namespace conf
|
||||
* Convert string to Log Severity enum type.
|
||||
* @param severity log severity code.
|
||||
* @return log severity type.
|
||||
*/
|
||||
*/
|
||||
LOG_SEVERITY get_loglevel_type(std::string_view severity)
|
||||
{
|
||||
if (severity == "dbg")
|
||||
|
||||
Reference in New Issue
Block a user