我正在使用docker-compose在内部运行多容器软件(离线网络)。当没有与Docker注册表的直接连接时,提供软件更新的最佳方法是什么?
我尝试了两个选项(两者都不够):
1.提供使用.hidden { display:none; }
创建的完整Docker镜像。非常低效 - 每个图像都超过1gb,没有图层优化。
2.除Docker镜像外还提供自定义软件,并将其与主机卷映射到通用容器中。这样我就可以提供自定义软件更新,并减少需要更新Docker镜像的时间。然而,它远非最优化。
有没有办法只使用自定义软件作为文件提供更新的Docker层?还有其他想法吗?
谢谢, 梅尔
答案 0 :(得分:2)
您有几种选择:
Configuration
选项gzip保存并使用public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{
loggerFactory.AddConsole(Configuration.GetSection("Logging"));
loggerFactory.AddDebug();
var options = new RewriteOptions()
.AddRedirectToHttps();
app.UseRewriter(options);
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseDatabaseErrorPage();
app.UseBrowserLink();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
app.UseIdentity();
app.UseFacebookAuthentication(new FacebookOptions()
{
AppId = Configuration["Authentication_FacebookAppId"],
AppSecret = Configuration["Authentication_FacebookAppSecret"]
});
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
代替--rsyncable
我希望上面几种方法的组合应该足够好。