小编Ore*_*n_C的帖子

如何使用复制到docker容器的python虚拟环境

我已经安装了一个 python 包,并根据需要进行了修改,并将其存储在 venv 文件夹中。我想使用:

RUN source venv/bin/activate
Run Code Online (Sandbox Code Playgroud)

在我的 Dockerfile 中(当然将其复制到容器中之后)可以解决我的问题,但对此答案的评论表明它不能。后来,我发现这篇文章展示了如何在 docker 容器内设置新的 venv,但没有回答我的问题。许多其他答案让我陷入了无休止的疯狂追逐,所以我决定在这里提问。希望一个好的答案能够解决我的问题,并为将来在 docker 容器中自定义 python 包时面临这个问题的人提供服务。

我的问题:
如何使用复制到 docker 容器中的 venv?

python docker

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

"尝试加载gem'mysql2'时出错.(Bundler :: GemRequireError)"redmine安装后出现错误

我正在将redmine从我们办公室的本地服务器转移到在线服务器,这样任何处理错误管理的人都不需要拥有VPN帐户来访问redmine.

所以,我们选择使用Bluehost.com因为我们看到其默认的Ruby版本是1.9.3(与管理平台工作),而其他主机,我们已经签出了在1.8.7

好的,我已经完成了背景故事,现在是主要的故事情节:

我正在尝试几天在服务器上安装redmine但没有成功.我得到的错误是这样的:错误消息:

尝试加载gem'mysql2'时出错.(捆扎机:: GemRequireError)

异常类:PhusionPassenger :: UnknownError

以下是一些细节:

Ruby版本1.9.3 Redmine版本3.2.2 Rails版本4.2.5.2(作为redmine的软件包的一部分安装)MySQL版本5.5.42

我在网上使用了一些关于如何在服务器上安装redmine的指南.其中一个是bluehost的指南:https: //my.bluehost.com/cgi/help/redmine

彻底搜索StackOverflow后我尝试过的:

  • 我读到有时mysql2宝石有问题,需要在捆绑后再次重新安装,所以我做了 gem install mysql2
  • 当有人在这里说mysql2 gem在版本0.3.16或其他类似版本上使用bluehost时,我也尝试安装特定版本.没工作.
  • 我甚至尝试安装一个本地较新版本的Ruby 2.3.1,但这也不起作用,只是在我意识到宝石不一定受系统上安装的ruby版本影响之后.
  • 我甚至无法使用测试功能(如WEBrick或Thin),因为Bluehost希望您拥有专用服务器以便为您打开特殊端口.我们正在使用共享主机.

无论如何,经过大约4天的处理,我得出结论,我需要寻求帮助.当然,我也学到实用的Ruby的语法on Rails的同时处理这个问题(我是在无知和有红宝石本身没有知识),但我需要完成这件事.

有没有人对我可以尝试使其工作的事情有任何见解?这是错误的一个镜头: 乘客错误

production.log数据:

Migrating to InsertAllowedStatusesForNewIssues (20150725112753)
Migrating to CreateImports (20150730122707)
Migrating to CreateImportItems (20150730122735)
Migrating to ChangeTimeEntriesCommentsLimitTo1024 (20150921204850)
Migrating to ChangeWikiContentsCommentsLimitTo1024 (20150921210243)
Migrating to ChangeAttachmentsFilesizeLimitTo8 (20151020182334)
Migrating to FixCommaInUserFormatSettingValue (20151020182731)
Migrating to ChangeIssueCategoriesNameLimitTo60 (20151021184614)
Migrating to ChangeAuthSourcesFilterToText (20151021185456)
Migrating to ChangeUserPreferencesHideMailDefaultToTrue (20151021190616)
Migrating to AddTokensUpdatedOn (20151024082034)
Migrating to CreateCustomFieldEnumerations (20151025072118) …
Run Code Online (Sandbox Code Playgroud)

ruby mysql rubygems ruby-on-rails redmine

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

使用 systemd 运行 docker 容器

我有一个在 CentOS 7 上使用 systemd 启动 docker 容器的服务定义:

[Unit]
Description=MappingService
After=portal.service
Requires=docker.service

[Service]
TimeoutStartSec=3000
Type=forking
WorkingDirectory=/home/user/Downloads/MS_0.3.4_artifact
ExecStartPre=-/bin/docker rm -f eb-mapping-service-container
ExecStartPre=/home/user/Downloads/MS_0.3.4_artifact/deploy.sh /home/user/Downloads/MS_0.3.4_artifact/eb-mapping-service.tgz
ExecStartPre=/bin/docker run -v /dev/log:/dev/log -d -ti --log-driver=journald --network=bridge -p 9090:9090 --name eb-mapping-service-container eb-mapping-service  /bin/bash -c "cd /build/MappingService; ./start_multiple_clients_mapping_service.sh"
ExecStart=/bin/docker start -a eb-mapping-service-container
ExecStop=/bin/docker stop eb-mapping-service-container

[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)

这项服务有效。它启动的 Docker 容器已启动。每当我启动计算机时,它就会运行。我对该服务的问题是它永远不会达到活动(正在运行)状态。相反,它停留在“正在激活(开始)”状态。“start_multiple_clients_mapping_service.sh”脚本启动一个node.js 服务器并开始侦听,因此它不会直接退出。

我到处搜索并浏览了 Docker 的相关文档,但找不到答案。

另外,如果我从 docker start 命令中删除“-a”,那么即使容器已启动并运行,状态也将为“非活动”(死亡)。更新:过了一段时间,我没有确切的数字,服务因超时原因失败。这不是 3000 秒之后,而是更早的时间。虽然服务失败了,但是docker还在空中,可以使用
我已经验证过docker container ls

问题:
如何更改服务定义以反映 docker 的活动(正在运行)状态?

systemd docker

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

如何在 kubernetes python 中使用 kubectl 顶级节点?

更新

关于空间,我意识到我可以将根路径“/”安装到容器中并使用这段代码来获取我的统计信息:

import shutil

total, used, free = shutil.disk_usage("/")

print("Total: %d GiB" % (total // (2**30)))
print("Used: %d GiB" % (used // (2**30)))
print("Free: %d GiB" % (free // (2**30)))
Run Code Online (Sandbox Code Playgroud)

不过,仍在寻找一种通过 Kubernetes 本身来实现这一点的方法。

原始问题

我正在构建一项服务,其部分功能是监视我的 kubernetes 集群的系统资源(不是特定的 Pod - 节点运行的整个机器),我意识到这kubectl top node是获取该信息(不包括存储)的好方法。

有没有办法使用 kubernetes python 包获取此信息?

我试图在包文档中找到解决方案,并意识到该操作不存在。(也许用不同的名字?我找不到它)
也在 Github 上发现了这个问题,它部分解决了我的问题,但我仍在寻找更简单的东西。

我的问题:如何通过 Kubernetes Python 包检查 kubernetes 节点的系统资源(例如内存、存储和 CPU 使用情况)?

python kubernetes

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

标签 统计

docker ×2

python ×2

kubernetes ×1

mysql ×1

redmine ×1

ruby ×1

ruby-on-rails ×1

rubygems ×1

systemd ×1