小编hbo*_*ert的帖子

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

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

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

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

automatic-updates docker

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

在Scala中只能做4个并发期货

我认为使用期货很容易让我发射一次代码块,但似乎我一次只能有4个期货.

这种限制来自哪里,或者我是否通过这样使用它来滥用期货?

import scala.concurrent._
import ExecutionContext.Implicits.global
import scala.util.{Failure, Success}
import java.util.Calendar

object Main extends App{

  val rand = scala.util.Random

  for (x <- 1 to 100) {
    val f = Future {
      //val sleepTime =  rand.nextInt(1000)
      val sleepTime =  2000
      Thread.sleep(sleepTime)

      val today = Calendar.getInstance().getTime()
      println("Future: " + x + " - sleep was: " + sleepTime + " - " + today)
      1;
    }
  }

  Thread.sleep(10000)
}
Run Code Online (Sandbox Code Playgroud)

输出:

Future: 3 - sleep was: 2000 - Mon Aug 31 10:02:44 CEST …
Run Code Online (Sandbox Code Playgroud)

concurrency scala

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

apache 的两个 remoteip 指令背后的基本原理是什么?RemoteIPTrustedProxy 与 remoteipinternalproxy

RemoteIPTrustedProxy 不接受像 10.0.0.0/8 这样的内部地址。

remoteipinternalproxy 接受所有地址。

什么时候应该使用其中之一。基本原理是,据我所知,无法从Apache httpd的文档中检索。

apache directive x-forwarded-for

7
推荐指数
0
解决办法
620
查看次数

使用-L添加link_library时,Cmake不设置RPATH

以下列方式设置链接库时

target_link_libraries (SOME_TARGET -L/somedir -lfoo)
Run Code Online (Sandbox Code Playgroud)

cmake不处理RPATH.使用'-L'和'-l'不是最佳实践,或者实际上是错误的?在创建我自己的Find*.cmake时,我经常使用,find_library()但我得到的查找脚本没有这样做,并使用'-L'和'-l'转到上面的表单.

文档并没有真正解释如何收集RPATH,文档也不是很清楚如何处理"-l"和"-L"你得到的唯一指针是

"以 - ,但不是-l或-framework开头的项目名称被视为链接器标志"

rpath cmake

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

在整数向量上使用_mm_shuffle_ps的含义

SSE内在函数包括_mm_shuffle_ps xmm1 xmm2 immx允许从中xmm1连接2个元素的2个元素xmm2.然而,这是浮动,(由_ps暗示,包装单).但是,如果你强制打包整数__m128i,那么你也可以使用_mm_shuffle_ps:

#include <iostream>
#include <immintrin.h>
#include <sstream>

using namespace std;

template <typename T>
std::string __m128i_toString(const __m128i var) {
    std::stringstream sstr;
    const T* values = (const T*) &var;
    if (sizeof(T) == 1) {
        for (unsigned int i = 0; i < sizeof(__m128i); i++) {
            sstr << (int) values[i] << " ";
        }
    } else {
        for (unsigned int i = 0; i < sizeof(__m128i) …
Run Code Online (Sandbox Code Playgroud)

sse avx

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

如何在Spark Shell中在运行时添加配置单元属性

如何hive.metastore.warehouse.dir在运行时设置像以下这样的配置单元属性?或至少像上面这样设置属性的动态方式,而不是将其放入文件中 spark_home/conf/hive-site.xml

hive apache-spark

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

不要使用层缓存,但在使用 docker+buildkit 时一定要使用 mount-cache

当使用 buildkit、使用 docker cli 前端时,我有时不想使用层缓存,但确实想依赖较新的挂载缓存类型。

RUN --mount=type=cache,target=...
Run Code Online (Sandbox Code Playgroud)

然而,跑步docker build --no-cache似乎会禁用两者。

有没有一种方法可以选择在重建期间仅使用安装缓存?

docker docker-buildkit

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

在开始和结束时间的元组列表中查找空间隔的功能方法

假设我有一个包含开始和结束时间的元组列表:

List((1,10), (2,11), (3,11), (13,14))
Run Code Online (Sandbox Code Playgroud)

唯一的放松是开始时间是提升的

我期待以下输出:

List((0,1), (11,13))
Run Code Online (Sandbox Code Playgroud)

程序实现相当简单,但我不知道这个(惯用)功能.

scala-for-yield循环似乎不合适,因为结果与输入的大小相同.而减少/折叠会限制我只有一个元组作为答案.

functional-programming scala

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

使用if-else中的重复代码减少代码重复

我想知道以下简短的片段,确实显示重复可以使更多干.我似乎经常遇到这种结构.

假设我想要在运行时选择同步或异步的某些计算.

for(i <- 1 to reps) {
  Thread.sleep(expDistribution.sample().toInt)
  if (async) {
    Future {
      sqlContext.sql(query).collect()
    }
  } else {
    sqlContext.sql(query).collect()
  }
}
Run Code Online (Sandbox Code Playgroud)

重复调用sqlContext会感觉很笨拙.这个琐碎的重复构造有成语吗?

scala dry

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

magit 中的 git clean -f -d -x 相当于什么

我希望能够顺利 z -a z进入 magit-status并且能够stash pop / z p顺利进入。然而,将所有内容存储在 Magit 中显然意味着将忽略的目录保存到存储中,而不是将其从工作目录中删除。

结果是您不能简单地弹出存储,因为存储将尝试弹出已存在的被忽略目录中的文件。

重播:

git init 
mkdir ignoreme
touch ignoreme/ignoremefile
git init
echo ignoreme > .gitignore
git add .gitignore
git commit -m "add ignore file"
emacs
  m-x magit-status; z; -a;z
git stash pop
  ignoreme/ignoremefile already exists, no checkout
  Could not restore untracked files from stash
Run Code Online (Sandbox Code Playgroud)

emacs magit

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

启用错误选项时,无法在Bash中使用增量操作

为什么以下代码段不起作用?

set -ue

inc=0
((inc++))
((inc++))
echo $inc
echo Here
[output nothing, return code 1]
Run Code Online (Sandbox Code Playgroud)

但是当禁用'-e'时它确实按预期工作?我用"GNU bash,版本4.3.46(1)-release"运行它

bash

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