标签: docker-privileged

Docker 在 CPU 密集型代码上性能下降 50%

我对使用 docker 或任何容器还很陌生,所以如果我错过了其他人都已经知道的明显内容,请保持温和。我已经搜索了所有我能想到的地方,但还没有看到这个问题得到解决。

我试图评估在 docker 中运行基准测试的性能成本,我发现了令人惊讶的巨大差异,这些差异对我来说没有意义。我用这个 Dockerfile 创建了一个简单的 Docker 镜像:

FROM ubuntu:18.04

RUN apt -y -q update && apt -y -q install python3 vim strace linux-tools-common \
        linux-tools-4.15.0-74-generic linux-cloud-tools-4.15.0-74-generic

ADD . /workspace
WORKDIR /workspace
Run Code Online (Sandbox Code Playgroud)

我有一个简单的python脚本用于测试:

$ cat cpu-test.py
#!/usr/bin/env python3

import math
from time import time

N = range(10)
N_i = range(1_000)
N_j = range(1_000)
x = 1

start = time()
for _ in N:
    for i in N_i:
        for j in N_j:
            x += -1**j * math.sqrt(i)/max(j,2)
stop = …
Run Code Online (Sandbox Code Playgroud)

performance docker docker-privileged

7
推荐指数
2
解决办法
1775
查看次数

如何关闭 docker 容器内的主机 (ubuntu)

我想在 docker 容器完成作业时关闭机器(主机)。

我的主机操作系统是 Ubuntu。

容器可以作为--privileged=true. 那不是问题。

我设法使用以下命令来做到这一点(在 stackoverflow 答案中找到):

subprocess.run("echo 1 > /proc/sys/kernel/sysrq; echo o > /proc/sysrq-trigger", shell=True, check=True)
Run Code Online (Sandbox Code Playgroud)

这种方法的问题是在 Linux 中会立即、不干净地关闭。

如果我尝试以干净的方式作为 a shutdown now,我会收到以下错误:System has not been booted with systemd as init system (PID 1). Can't operate.

如何在容器内使用 shutdown、halt 或其他替代方法来关闭主机?

ubuntu shutdown docker docker-privileged

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

如何在 Cloud Run 中以特权运行 docker 容器

我有一个 docker 容器,需要使用 --privileged 运行,以便在启动后建立 VPN 连接

我正在使用 Cloud Build 将其迁移到 Cloud Run

我尝试了 --container-privileged 但这似乎只适用于 GCE,我还在cloudbuild.yaml 中的调用中添加了以下内容,但它args抱怨gcloud run deployerror: "Invalid command \"docker run --privileged\": file not found anywhere in PATH

   - --command
    - docker run --privileged
Run Code Online (Sandbox Code Playgroud)

docker google-cloud-platform google-cloud-build google-cloud-run docker-privileged

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