标签: automatic-updates

如果更新基本映像,如何自动更新docker容器

假设我有一个基于的简单容器ubuntu:latest.现在有一个安全更新,并ubuntu:latest在docker repo中更新.

  1. 我怎么知道我的本地图像及其容器在后面运行?

  2. 是否有一些最佳实践可以自动更新本地映像和容器以遵循docker repo更新,这在实践中会为您提供在传统ubuntu机器上运行无人值守升级的相同细节

automatic-updates docker

187
推荐指数
11
解决办法
9万
查看次数

Tomcat不会自动识别IntelliJ和Tomcat ....已更改的文件

我正在使用Tomcat运行Intellij Ultimate并部署战争.一切都很好地部署到tomcat的webapp目录.

当我更改像xhtml文件这样的文件时,有没有办法让tomcat自动获取该更改?到目前为止,我需要从intellij复制文件并将其复制到tomcat webapp目录中的目录.我知道某些文件需要重新编译,但xhtml不是其中之一.

tomcat war intellij-idea automatic-updates

128
推荐指数
3
解决办法
8万
查看次数

如何使Java应用程序自我更新?

问题:我有一个独立的Java应用程序(以下称为"代理"),它作为内部公司服务器上的服务运行.它充当某些中央服务器的远程代理.随着代理部署在更多地方,管理它们变得越来越复杂.具体来说:推送更新很痛苦,因为它是一个相当手动的过程,并且访问日志和有关运行代理的环境的其他信息是有问题的,这使得调试变得困难.正在讨论的服务器无头且无人值守,这意味着这必须是一个完全自动化的过程,无需人工干预,因此Java Web Start不是一个可行的解决方案.

建议的解决方案:定期将代理电话置于家中(到中央服务器)以提供代理状态并检查更新.

我对这个问题的其他建议解决方案持开放态度,但我已经有了一个关于"状态和自我更新"想法的工作原型,这就是这个问题所关注的问题.

我想出的实际上是一个单独的项目,充当代理的包装器.包装器通过HTTP定期调用中央服务器以检查代理的更新版本.找到更新后,它会下载新版本,关闭正在运行的代理,然后启动新版本.如果这看起来像一个奇怪的或迂回的解决方案,这里有一些值得注意的其他考虑/约束:

  1. 当包装器获得新版本的代理时,可能会有新的JAR依赖关系,这意味着类路径发生了变化,这意味着我可能想要生成一个单独的Java进程而不是摆弄ClassLoaders并冒着永久性内存泄漏的风险,需要人工干预 - 正是我想要摆脱的.这就是为什么我最终得到一个单独的"包装"过程来管理我的原型中的代理更新.
  2. 部署代理程序的某些服务器受资源限制,因此任何解决方案都需要CPU和内存使用率较低.这让我想要一个不涉及启动新JVM的解决方案,并且不需要单独的包装器进程.
  3. 代理已经部署到Windows和RHEL服务器,因此解决方案必须是跨平台的,尽管我不会有问题在批处理和bash脚本中复制合理数量的流程以使事情滚动.

:如上所述,我想知道如何制作自我更新的Java应用程序.更具体地说,是否有任何框架/库可以帮助我解决这个问题?在这方面有经验的人能给我一些指示吗?

java deployment installer auto-update automatic-updates

26
推荐指数
1
解决办法
1万
查看次数

自动更新python脚本

TL; DR我需要一个模块,它会在后台自动更新我的脚本.

我有一个Python脚本,我分发给用户.我经常更新这个,然后让他们更新它(通过PIP).显然,对于只想使用应用程序而不考虑更新应用程序的用户来说,这不是一个高优先级.

我希望它可以自动更新我的应用,就像谷歌浏览器在后台默默地更新我的应用程序一样.是否有图书馆允许我这样做?如果没有,是否有一种直接的方式来使用PIP /分配模块来做到这一点?

python pip distribute automatic-updates

11
推荐指数
1
解决办法
2661
查看次数

当我进行iTunes Connect分阶段发布时会发生什么?

iTunes Connect现在让我发布一个分阶段发布的应用程序.这是解释这一点的Web UI.

分阶段发布选项

更新发布给用户后实际发生了什么?我得到什么控制和反馈?

itunesconnect release automatic-updates

9
推荐指数
1
解决办法
5254
查看次数

是否可以动态升级Python包?

我维护一个内部Python包,供公司中一些不太技术的人使用.由于他们的需求(或者更确切地说,他们的需求)几乎每天都在变化,我必须经常更新库,并且为了他们的喜好我经常为他们创建新的安装程序.

lib提供对自定义内部数据库的高级访问.此时,我知道我可以将lib版本与查询请求一起发送,并向用户显示一条消息,其结果是他们需要安装更新.

但是,由于这些人似乎认为花几秒钟点击.exe文件并点击安装程序上的"下一步"按钮需要太长时间,我被要求查看是否有办法自动更新该库在进行"导入X"调用时.

我从来没有遇到过这样的请求,我想如果有可能,大多数流行的图书馆都会提供这个选项.但我以前经常犯错.有没有人成功地做过这件事?

python installer automatic-updates

6
推荐指数
1
解决办法
349
查看次数

强制 Terraform 仅从本地磁盘安装提供程序,禁用 Terraform Registry

自 1995 年以来,我们使用了一种更新机制

  • 干净地更新和删除软件
  • 在内部集中存储所有软件元数据,以从单一事实来源管理需求和工件
  • 永远不要随意触发自己。

虽然我们知道 terraform 已经开始在没有任何这些功能的情况下勇敢地重新发明那个轮子,但我们希望完全禁用它。我们当前的套件仅包含一个插件:

terraform-0.13.0-1.el7.harbottle.x86_64
golang-github-terraform-provider-vsphere-1.13.0-0.1.x86_64
Run Code Online (Sandbox Code Playgroud)

目标是

  1. 从不检查注册表
  2. 如果未安装给定模块,则返回错误

我将非常感谢为此提供好的建议。是否有我忽略的设置,或者我们可以通过告诉它看起来某个地方是空的来伪造它吗?是否有 -stay-in-your-lane 开关?

澄清:

  • 附加包是一个 go-build 包,它只提供一个工件/usr/bin/terraform-provider-vsphere而不是其他任何东西。这对于所有以前的化身都非常有效,并且可能只是在 v13 中才开始起作用。

更新:这些事情失败了:

  • terraform init -plugin-dir=/dev/shm
  • terraform init -get-plugins=false
  • terraform init -get=false
  • 环境 terraform::required_providers::vsphere::source=""
  • echo "disable_checkpoint = true" > ~/.terraformrc
$ terraform init -get-plugins=false

Initializing the backend...

Initializing provider plugins...
- Finding latest version of -/vsphere...
- Finding latest version of hashicorp/vsphere...
Run Code Online (Sandbox Code Playgroud)

更新:我还是有点不对劲:

rpm -qlp golang-github-terraform-provider-vsphere
/usr/share/terraform/plugins/registry.terraform.io/hashicorp/vsphere/1.14.0/linux_amd64/terraform-provider-vsphere
Run Code Online (Sandbox Code Playgroud)

我觉得我真的很亲近。/usr/share/ 在 XDG 默认搜索路径中,它似乎确实找到了该位置,但它似乎首先/根本检查了注册表,这出乎意料。

Initializing provider plugins...
- Finding latest …
Run Code Online (Sandbox Code Playgroud)

out-of-band automatic-updates terraform

5
推荐指数
1
解决办法
3339
查看次数

自动更新JTextArea

对Java完全陌生,我感到一头雾水。

我的系统上有一个JTextArea,我想进行实时更新,因此,当将某些内容添加到table2(在我的数据库中)时,我的服务器从数据库中提取新值,然后更新JTextArea。

我完全不知道如何执行此操作,尽管我已经确定需要使用Thread才能使其正常工作。

任何/所有帮助都将不胜感激(对此我有点时间不满)

java concurrency swing jtextarea automatic-updates

3
推荐指数
1
解决办法
1571
查看次数

使用root访问自我更新android系统应用程序

我从aosp创建了自定义ROM.我还包括了我的应用程序,让我们在构建时在自定义ROM中调用myCustomInstaller.apk(1.0).该应用程序基本上是一种Google Play商店.该应用程序具有系统权限,可以静默安装或删除应用程序.

我能够安装,更新或删除任何其他应用程序.我面临的问题是,当我将myCustomInstaller.apk更新为2.0本身时,应用程序也以静默方式安装,我能够看到安装的应用程序中安装的最新版本,但是当我重新启动手机时,myCustomInstaller应用程序还原到原始版本.

我真的不知道如何继续,谷歌Playstore如何更新自己,并安装其他应用程序?我是否需要任何其他权限才能使myCustomInstaller应用的更新版本保持不变?

我正在使用它进行静默安装,是的我修改了代码以进行更新和删除 https://code.google.com/p/auto-update-apk-client/

android rom apk android-install-apk automatic-updates

3
推荐指数
1
解决办法
3078
查看次数

Firefox扩展自动更新无法正常工作

我按照这里的说明操作,安装后我打开控制台模式进行调试,但是日志卡在那里没有任何响应:控制台只显示如下内容,没有更多输出:

*** LOG addons.updates: Requesting https://www.extension.host.com/update.rdf
Run Code Online (Sandbox Code Playgroud)

install.rdf是:

<?xml version="1.0"?>
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
     xmlns:em="http://www.mozilla.org/2004/em-rdf#">

  <Description about="urn:mozilla:install-manifest">

    <em:id>webmailchecker@mozilla.doslash.org</em:id>
    <em:name>WebMail Checker for Firefox</em:name>
    <em:version>1.0</em:version>
    <em:description>WebMail Checker</em:description>
    <em:updateURL>https://www.extension.host.com/update.rdf</em:updateURL>

    <!-- Firefox -->
    <em:targetApplication>
      <Description>
        <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
        <em:minVersion>3.6</em:minVersion>
        <em:maxVersion>23.*</em:maxVersion>
      </Description>
    </em:targetApplication>
  </Description>
</RDF>
Run Code Online (Sandbox Code Playgroud)

并且update.rdf是:

<?xml version="1.0" encoding="UTF-8"?>

<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:em="http://www.mozilla.org/2004/em-rdf#">

  <RDF:Description about="urn:mozilla:extension:webmailchecker@mozilla.doslash.org">
    <em:updates>
      <RDF:Seq>

        <!-- Each li is a different version of the same add-on -->
        <RDF:li>
          <RDF:Description>
            <em:version>1.0</em:version> 
            <em:targetApplication>
              <RDF:Description>
                <em:id>{ec8030f7-c20a-464f-9b0e-13a3a9e97384}</em:id>
                <em:minVersion>1.5</em:minVersion>
                <em:maxVersion>23.*</em:maxVersion>
                <em:updateLink>https://www.extension.host.com/firefox.xpi</em:updateLink>

              </RDF:Description>
            </em:targetApplication>
          </RDF:Description>
        </RDF:li>

        <RDF:li>
          <RDF:Description>
            <em:version>2.0</em:version> …
Run Code Online (Sandbox Code Playgroud)

firefox firefox-addon automatic-updates

1
推荐指数
1
解决办法
2074
查看次数

防止Windows 10更新丢失休眠会话?

我在Windows 10(OS Build 10586.218)上运行Dell XPS 9350,遇到了以下问题:

  1. 运行各种应用程序的Windows会话,Chrome等
  2. 我关闭笔记本电脑盖(电源选项配置为在此操作上休眠)
  3. 机器睡觉
  4. 180分钟后,机器休眠(电源选项也配置为使用电池执行此操作,因此预计)
  5. 我打开盖子,然后按电源按钮再次打开机器.
  6. Windows开始启动,但我得到一个屏幕,显示正在安装的Windows更新的百分比!屏幕显示戴尔徽标,但我怀疑这只是Windows的OEM定制.在此步骤中可以看到鼠标光标.
  7. 安装更新后,我的休眠会话将丢失 - 我回到Windows的干净启动.

Windows更新设置为自动.

显然,有些事情不对劲!如果计算机处于休眠状态,则重新打开电源时不应安装更新.

在Google和这些论坛中搜索过,无法看到其他人遇到此问题.

有谁知道如何阻止这种行为,还是某种Windows 10错误?

updates hibernation automatic-updates windows-10

1
推荐指数
1
解决办法
2178
查看次数

实时自我更新的PHP类

我有一个PHP类,可以与我们正在开发的API进行通信.我不想使用不同的API版本并让用户手动更新PHP类脚本,而是希望自动完成此过程.

此更新必须在找到更新后即时完成.这是我的想法:

  • 用户程序尝试通过我们提供的PHP类访问API
  • PHP类检查更新
  • 如果有更新,该类将下载该类的新版本,并希望该类的新版本处理API请求.

这显然意味着PHP类需要对该类所在文件的写权限,因此它可以简单地用新版本覆盖该类.

类现在如何通过新的类版本执行所请求的API请求?在一个完美的世界中,我正在寻找一种不使用eval()的方法,因为此功能在许多主机上被阻止.

详细说明:

$myApi = new MyApi;
$myApi->registerCustomer($customerData);
Run Code Online (Sandbox Code Playgroud)

registerCustomer()函数会执行以下操作:

if (classNotUpToDate) {
    downloadNewClass();
    registerCustomerthroughNewClass()
} else {
    registerCustomerDo();
}
Run Code Online (Sandbox Code Playgroud)

现在我能想到的唯一方法就是:

  • 将新类版本下载到变量中
  • 在该变量中,替换class MyApi {...class MyApiUpdate {..
  • 再次包含当前文件,加载新的更新类
  • 创建新类的实例: $myApiUpdate = new MyApiUpdate;
  • 调用registerCustomer()函数:$myApiUpdate->registerCustomer($customerData);
  • 使用新的类代码覆盖当前文件内容(无替换)

这是实现我想要的唯一方法,无需创建新文件或使用eval()?我不认为这是一个非常漂亮的方法,所以我正在寻找一种更清洁的方法来实现这一目标.

php class updates automatic-updates

0
推荐指数
1
解决办法
167
查看次数