我在kubernetes集群中有3个节点.我创建了一个daemonset
并在所有3个设备中部署它.这daemonset
创建了3个pod并且它们已成功运行.但由于某些原因,其中一个pod失败了.
我需要知道如何在不影响守护进程集中的其他pod的情况下重新启动此pod,同时不创建任何其他守护进程集部署?
谢谢
我有一个简单的代码,我已经创建了一个docker容器,状态显示它运行正常.在代码中我使用了一些print()
命令来打印数据.我想看看打印命令输出.
为此,我看到了docker日志.但它似乎没有工作,因为它没有显示日志.如何查看日志.?
$ sudo docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a3b3fd261b94 myfirstdocker "python3 ./my_script…" 22 minutes ago Up 22 minutes elegant_darwin
$ sudo docker logs a3b3fd261b94
<shows nothing>
Run Code Online (Sandbox Code Playgroud) 我创建了一个kubernetes集群,其中有一个主节点和两个工作节点.我使用下面的命令初始化主节点
sudo kubeadm init --token-ttl=0 --apiserver-advertise-address=192.168.0.27
Run Code Online (Sandbox Code Playgroud)
192.168.0.27
是主节点的IP地址.然后我使用生成的令牌启动我的工作节点.现在问题是我的网络在DHCP中,并且ip地址有时会发生变化,因为它开始显示以下错误:
Unable to connect to the server: dial tcp 192.168.0.27:6443: getsockopt: no route to host
Run Code Online (Sandbox Code Playgroud)
它显示上面的错误,因为在初始化主节点时,我已经使用了ip地址,并且在ip地址改变之后,它无法访问它.
是否可以以某种方式配置主节点和其他节点,以便它们可以在任何IP地址更改时工作.
谢谢
我有以下 json 数据:
{
"images": [
{
"candidates": [
{
"confidence": 0.80836,
"enrollment_timestamp": "20190613123728",
"face_id": "871b7d6e8bb6439a827",
"subject_id": "1"
}
],
"transaction": {
"confidence": 0.80836,
"enrollment_timestamp": "20190613123728",
"eyeDistance": 111,
"face_id": "871b7d6e8bb6439a827",
"gallery_name": "development",
"height": 325,
"pitch": 8,
"quality": -4,
"roll": 3,
"status": "success",
"subject_id": "1",
"topLeftX": 21,
"topLeftY": 36,
"width": 263,
"yaw": -34
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
我需要检查subject_id
上面的json数据中是否存在。为此,我在下面做了:
auto subjectIdIter = response.find("subject_id");
if (subjectIdIter != response.end())
{
cout << "it is found" << endl;
}
else
{
cout << …
Run Code Online (Sandbox Code Playgroud) 我使用Raspberry pi
了kubernetes
群集设置.我使用的是docker版本:
Client:
Version: 18.06.1-ce
API version: 1.38
Go version: go1.10.3
Git commit: e68fc7a
Built: Tue Aug 21 17:30:52 2018
OS/Arch: linux/arm
Experimental: false
Server:
Engine:
Version: 18.06.1-ce
API version: 1.38 (minimum version 1.12)
Go version: go1.10.3
Git commit: e68fc7a
Built: Tue Aug 21 17:26:37 2018
OS/Arch: linux/arm
Experimental: false
Run Code Online (Sandbox Code Playgroud)
看起来现在docker版本是最新的18.09.0
,最新kubernetes
版本不支持这个docker版本.我甚至尝试安装一些旧版本的kube,1.9.7
或者1.9.6
在启动时kubeadm init
,我收到以下错误:
[ERROR SystemVerification]: unsupported docker version: 18.09.0
[preflight] If you know what you are doing, …
Run Code Online (Sandbox Code Playgroud) 我有一个项目,opencv
我使用cv2.putText()
. 目前它看起来如下:
正如您在左上角看到的那样,文本存在但不清晰可见。是否可以将背景设为黑色,以便文本看起来不错。类似于下图:
即使黑色背景覆盖到框架的右侧,也可以。下面是我用来在框架上放置文本的代码:
cv2.putText(frame, "Data: N/A", (5, 30), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
cv2.putText(frame, "Room: C1", (5, 60), cv2.FONT_HERSHEY_COMPLEX_SMALL, 1, (0, 0, 255), 1)
Run Code Online (Sandbox Code Playgroud)
opencv 中是否有任何可以执行此操作的预构建方法/库。任何人都可以请提出一个好方法吗?
我有一个flask
基于python的代码,只需连接到.mongodb
它有两个路由Get
Post
.Get
简单地打印hello world
和使用Post
我们可以发布任何json数据,后来保存在MongoDB
这个python代码工作正常.MongoDB
托管在云端.
我现在创建了一个Dockerfile:
FROM tiangolo/uwsgi-nginx-flask:python3.6-alpine3.7
RUN pip3 install pymongo
ENV LISTEN_PORT=8000
EXPOSE 8000
COPY /app /app
Run Code Online (Sandbox Code Playgroud)
使用命令运行
docker run --rm -it -p 8000:8000 myflaskimage
启动此docker镜像的容器后,我收到响应,GET
但没有响应POST
.我正在使用Postman
软件发布json数据.我得到以下错误:
pymongo.errors.ServerSelectionTimeoutError: No servers found yet
Run Code Online (Sandbox Code Playgroud)
我有点困惑为什么python代码工作正常但是当我把它放在docker并启动容器时,它会抛出错误.我们是否必须包含任何内容Dockerfile
才能启用连接MongoDB
.
请帮忙.谢谢
Python代码:
from flask import Flask, request
from pymongo import MongoClient
app = Flask(__name__)
def connect_db():
try:
client = MongoClient(<mongodbURL>)
return client.get_database(<DBname>) …
Run Code Online (Sandbox Code Playgroud) knownEmbeddings = []
knownNames = []
for (i, imagePath) in enumerate(imagePaths):
## SOME CODE
knownNames.append(name)
knownEmbeddings.append(vec.flatten())
data = {"embeddings": knownEmbeddings, "names": knownNames}
f = open('file.json', "wb")
f.write(json.dumps(data, indent=4))
f.close()
Run Code Online (Sandbox Code Playgroud)
看起来data
像这样:
{'embeddings': [array([ 2.23568859e-04, -4.08176295e-02, -1.56606492e-02, -1.40566211e-02,
5.53448219e-04, 1.34807974e-01, 2.10583732e-02, -7.99260102e-03,
8.04360434e-02, 2.51036473e-02, -2.45967298e-03, 8.73192959e-03,
1.08047323e-02, 8.02712217e-02, 6.31465465e-02, 9.41963419e-02],
dtype=float32), array([-5.54675907e-02, 1.19409459e-02, -3.03599555e-02, -2.86714472e-02,
6.26528710e-02, 1.25348523e-01, -2.16291733e-02, -4.60545160e-02,
6.25465512e-02, -7.61162862e-02, 4.28330414e-02, 8.57844874e-02,
3.75184380e-02, -8.10878351e-02, -8.96525383e-02, 8.15552175e-02,
-9.75750014e-02, -8.24848488e-02, 9.30746570e-02, 1.71318889e-01,
1.00642473e-01, 5.39120510e-02, 1.12627009e-02, 1.40678780e-02,
-4.41719554e-02, 1.03237763e-01, 4.38372791e-02, 7.53327608e-02],
dtype=float32), …
Run Code Online (Sandbox Code Playgroud) 当我们docker-compose up-d
使用docker-compose.yml
文件运行命令来运行 docker 时,它开始构建镜像或从注册表中拉取镜像。我们可以在终端上看到这个命令的每一步。
我正在尝试从 python 脚本运行此命令。命令成功启动,但在命令之后,我不知道该过程完成了多少。有什么方法可以监视docker-compose up -d
命令的状态,以便脚本可以让用户(正在使用脚本的人)知道进程完成了多少,或者docker-compose
命令是否由于某些原因而失败。?
谢谢
代码:
from pexpect import pxssh
session = pxssh.pxssh()
if not session.login(ip_address,<USERNAME>, <PASSWORD>):
print("SSH session failed on login")
print(str(session))
else:
print("SSH session login successfull")
session.sendline("sudo docker-compose up -d")
session.prompt()
resp = session.before
print(resp)
Run Code Online (Sandbox Code Playgroud) 我有一个安装了docker的Linux系统。我在Azure上也有一个注册表,我有其用户名和密码。要从私有注册表中获取docker映像列表,我们可以简单地使用curl
如下命令:
curl localhost:5000/v2/_catalog
Run Code Online (Sandbox Code Playgroud)
我在计算机上安装专用注册表时测试了此命令,它为我提供了注册表中包含的映像列表。现在我有一个天蓝色的注册表。我可以成功登录到它,但是不知道我可以运行什么命令来获取docker镜像列表。这可能吗。?例如,如果我运行:
curl myregistry.azurecr.io/v2/_catalog
Run Code Online (Sandbox Code Playgroud)
表明:
<html>
<head><title>301 Moved Permanently</title></head>
<body bgcolor="white">
<center><h1>301 Moved Permanently</h1></center>
<hr><center>nginx</center>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
如何从Linux机器获取存储在Azure注册表中的图像列表
谢谢