小编Jam*_*979的帖子

删除远程 docker 注册表上的 docker 存储库

给定管理多个 docker 存储库的 docker 注册表,如何删除其中一个存储库?

鉴于库repo1repo2repo3

$ curl -X GET localhost:5000/v2/_catalog
{"repositories":["repo1", "repo2", "repo3"]}
Run Code Online (Sandbox Code Playgroud)

我想删除存储库repo1所以_catalog没有列出repo1,比如

$ curl -X GET localhost:5000/v2/_catalog
{"repositories":["repo2", "repo3"]}
Run Code Online (Sandbox Code Playgroud)

目前,存储库repo1只有默认的"latest"图像标签

$ curl -X GET localhost:5000/v2/repo1/tags/list
{"name":"repo1","tags":["latest"]}
Run Code Online (Sandbox Code Playgroud)

(也许这会影响能够删除repo1?)



我试过了...

返回以下命令404 page not found

$ curl -X DELETE localhost:5000/v1/repositories/repo1
$ curl -X DELETE localhost:5000/v2/repositories/repo1
$ curl -X DELETE localhost:5000/v2/repo1
Run Code Online (Sandbox Code Playgroud)

以下返回 {"errors":[{"code":"UNSUPPORTED","message":"The operation is unsupported."}]}

$ curl -X DELETE localhost:5000/v2/repo1/manifests/latest …
Run Code Online (Sandbox Code Playgroud)

docker docker-registry

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

为 powershell stdout stderr 着色

如何在 powershell 终端中对标准输出stdout和标准错误stderr进行着色?

也就是说,在典型的 powershell 终端中运行任何命令行程序。该程序写入stdoutstderr。程序不应被修改或了解颜色设置。
我希望stdout为白色,stderr为红色。

terminal powershell colors

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

诱导ActivityManager"不再需要"进行测试

我正在尝试测试我的应用程序如何处理被Android破坏ActivityManager(后来由Alarm事件重新启动).换句话说,我想强制传达这样的信息:

I/ActivityManager(  333): No longer want com.myname.myapp (pid 4444): hidden #22
Run Code Online (Sandbox Code Playgroud)

有没有办法可靠地诱导ActivityManager"不再需要"我的申请?


我知道结束过程的一些技巧(然而,这个问题的目的是找到一些东西来诱导ActivityManager"不再需要"的方法).

  • 使用管理应用程序,轻触"强制停止"按钮.
    这个问题是它似乎并不总是与ActivityManager"不再需要"的方法完全相同.
  • 运行许多内存占用应用程序.
    这个问题是它不可靠和耗时.有时候我可以运行很多应用程序而且我没有看到窥视ActivityManager.
  • OS API killBackgroundProcesses().
    这个问题是,不清楚killBackgroundProcesses()显式调用是否与"不再需要"方法完全相同ActivityManager.

android

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

从陷阱 RETURN 处理程序中访问函数的返回代码

在 bash 中,处理程序如何RETURN访问当前返回代码?

\n\n

例如

\n\n
#!/usr/bin/env bash\n\nfunction A() {\n    function A_ret() {\n        # How to access the return code here?\n        echo "${FUNCNAME} ???"\n    }\n    trap A_ret RETURN\n    echo -n "${FUNCNAME} returning code $1 ... "\n    return $1\n}\nA 1\n
Run Code Online (Sandbox Code Playgroud)\n\n

这打印

\n\n
A returning code 1 ... A_ret ???\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想要打印

\n\n
A returning code 1 ... A_ret 1\n
Run Code Online (Sandbox Code Playgroud)\n\n

如何A_ret获取A返回码?

\n\n


\n\n

类似于此 stackoverflow 问题在 \xe2\x80\x9ctrap EXIT\xe2\x80\x9d 中获取 shell 脚本的退出代码。 …

bash

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

Linux 运行内核探针 systemtap 脚本因语义错误而失败:不匹配”

我有 2 个实验环境:CentOS 6.8 和 Ubuntu 16.04 都在 Virtualbox VM 中运行。

在 CentOS 上我安装了

yum install kernel-devel kernel-debug
Run Code Online (Sandbox Code Playgroud)

在 Ubuntu 上我安装了:

sudo apt-get install linux-headers-$(uname -r)
sudo apt-get install fakeroot build-essential crash kexec-tools makedumpfile kernel-wedge
Run Code Online (Sandbox Code Playgroud)

在两个系统上我都可以成功运行:

stap -ve 'probe begin { log("hello world") exit() }'
Run Code Online (Sandbox Code Playgroud)

.stpsystemtap指南中尝试了这个脚本:

#!/usr/bin/stap
probe begin
{
    log("begin probe")
}
probe syscall.open
{
    printf("%s(%d) open (%s)\n",execname(),pid(),argstr)
}
probe timer.ms(4000)#4s later
{
    exit()
}
probe end
{
    log("end probe")
}
Run Code Online (Sandbox Code Playgroud)

chmod +x ...脚本并以 …

linux kernel systemtap

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

限制可能值的 Python 类型提示友好类型

我想要一种 python 类型提示友好的方式来创建一个具有约束值范围的类型。

例如,基于类型的URL类型str只接受看起来像“http”URL 的字符串。

# this code is made up and will not compile
class URL(typing.NewType('_URL', str)):
    def __init__(self, value: str, *args, **kwargs):
        if not (value.startswith('http://') or value.startswith('https://')):
            raise ValueError('string is not an acceptable URL')
Run Code Online (Sandbox Code Playgroud)

python python-3.x python-typing

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

Rust 设计存储结构和只读结构用户的方法

tl;dr创建一些字节存储的最佳“Rust 方式”是什么,在这种情况下是 a Vec<u8>,将其存储Vec<u8>struct可以使用键值(如 a BTreeMap<usize, &Vec<u8>>)访问的字段中,然后Vec<u8>从其他一些structs 中读取它们?
      这是否可以推断为类似structs的一般良好的防锈设计,这些s 充当可使用键(偏移量、索引、文件路径等)访问的字节(Vec<u8>[u8; 16384]、 等)的存储和缓存?usizeu32String

目标

我正在尝试创建一个字节存储structimpl功能:

  1. 将按需从磁盘读取的 16384 字节存储到Vec<u8>容量为 16384 的“块”中
  2. 其他人struct将分析各种Vec<u8>并可能需要存储自己对这些“块”的引用
  3. 高效:在内存中只有一个“块”的副本,避免不必要的复制、克隆等。

不幸的是,对于每次实现尝试,我都会遇到借用、生命周期省略、可变性、复制或其他问题的难题。

简化代码示例

我创建了一个struct BlockReader

  1. 创建一个Vec<u8>( Vec<u8>::with_capacity(16384)) 类型为Block
  2. 从文件中读取(使用File::seekFile::take::read_to_end)并将 16384 存储u8到一个Vec<u8>
  3. 存储对Vec<u8>内部BTreeMap类型为的引用Blocks …

rust

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

影响编码、解码和打印的 python 设置列表是什么?

当我遇到 unicode 打印问题时,我想知道应该检查什么。在我的特定情况下,我使用一个已安装的模块,该模块使用错误的编解码器打印 unicode 编码字符。

在各种情况下,有几个不同的地方会影响 python 编码和解码。具体来说,Python 在不同情况下如何处理可打印数据。

有些事情是最重要的:

  • 一般环境变量LC_ALLLANG
  • Pythonsys模块设置sys.getdefaultencoding()

我还忘记了什么?


我只对 python 3 感兴趣。

python unicode localization utf python-unicode

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

为什么 rust 'pub fn func(&amp;'a mut self)' 在运行后被认为是“可变借用的”?

tl;dr given pub fn func(&'a mut self),为什么运行后被self认为是“可变借用的” ? func

鉴于以下最小可行示例(操场

pub struct Struct1<'a> {
    var: &'a u8,
}

impl<'a> Struct1<'a> {
    pub fn new() -> Struct1<'a> {
        return Struct1 {
            var: &33,
        }
    }
    pub fn func(&'a mut self) -> () {
        ()
    }
}

fn main() {
    let mut s1 = Struct1::new();
    s1.func();  // point 1
                // point 2
    s1.func();  // point 3
}
Run Code Online (Sandbox Code Playgroud)

导致编译器错误

error[E0499]: cannot borrow `s1` as mutable …
Run Code Online (Sandbox Code Playgroud)

rust

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

将字节切片复制到大小不匹配的数组中

tl;dr将字节切片复制到本地字节数组(其大小可能与切片大小相同或不同)的最快方法是什么?

给定从函数返回的一些切片作为slice_: &[u8]. 我想将最大数量的切片数据复制到已知大小的本地数组buffer: [u8; 1024] = [0; 1024]. 换句话说,尽可能多地复制 fromslice_buffer。可以slice_是任意长度。

fn main() {
    let slice_: &[u8] = get_slice();
    let mut buffer: [u8; 1024] = [0; 1024];
    // copy slice_ to buffer ...
}
Run Code Online (Sandbox Code Playgroud)

复制切片最快的方法是什么?复制切片最惯用的方法是什么?

我知道功能copy_from_slice。然而,这需要

的长度src必须与 相同self

我可以迭代,slice_但这看起来很笨拙。我猜想还有一种更优雅的“质朴”方式。

rust

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