我正在尝试构建一个在一致的条件下运行代码的系统,我认为可能的一种方法是在docker容器中以相同的布局运行各种程序,保留相同的内存量,等等。然而,我似乎不知道如何保持CPU使用的一致性
我能找到的最接近的东西似乎是“cpu共享”,如果我理解文档,它会根据系统上运行的其他容器/其他进程以及系统上可用的内容来限制cpu的使用。它们似乎无法将容器限制为cpu使用的绝对量
理想情况下,我希望设置docker容器,将其限制为使用单个cpu核心。这可能吗?如果您使用较新版本的Docker,您可以在Docke
如果在命令行上或使用CMD指定了一个简单的run命令,则当程序退出时,容器停止。但是,如果:
程序生成新进程,然后ant退出
在命令行上使用“exec”,然后第一个命令退出
请你也指一下这些文件好吗
谢谢 执行docker run时运行的进程将是PID为1的进程(位于容器的进程命名空间内)。这个过程在UNIX/Linux系统中是特殊的,它是负责“采用”任何“孤立”过程的过程。如果此过程结束,所有过程也将结束
因此,回答您的问题,如果这个初始过程(在docker run中执行的过程)结束,那么
我正在编写dockerfile,希望将“ls”命令的输出放入一个变量中,如下所示:
$file = ls /tmp/dir
这里,“dir”里面只有一个文件
dockerfile中的以下运行指令无效
RUN $file = ls /tmp/dir
不能保存变量以供以后在其他Dockerfile命令中使用(如果您有意这样做的话)。这是因为每次运行都发生在一个新的shell中
但是,如果您只想捕获ls的输出,您应该能够在一个RUN复合命令中完成。例如:
RUN file="$(ls -1 /tm
我有一个docker编写的yml文件,如下所示
版本:“2”
服务:
nodejs:
建造:
上下文:。
dockerfile:dockerfile
端口:
- "4000:4000"
链接:
-雷迪斯
揭露:
- "6379"
redis:
建造:
上下文:。
dockerfile:dockerfile redis
我的目标是将nodejs-127.0.0.1端口6379转发到redis主机。我已经可以从nodejs机器ping redis了,但是端口没有映射。已尝试公开选项,但也没有机会。
标签: Docker
containersdockerhub
尝试使用上述任何一个命令停止容器将导致docker无限期等待。在docker ps输出中仍然可以观察到容器
很抱歉问了一个新手问题,但是一站式容器如何正确使用呢
此容器首先根据hub.docker.com上的说明运行,通过Ctrl+C停止,然后通过docker start再次启动。但在启动之后,它从未像预期的那样工作 docker stop是停止集装箱的正确方法。可能内部正在进行某些操作,您可以尝试使用docker日志向您提供有关内部运行内容的更多信息。您的测试对我有效:
→ docker ps
获取以下错误:
尝试连接到时网络超时。您可能需要检查您的internet连接,或者您是否支持代理
已经在以下链接中尝试了解决方案(尽管它们是针对ubuntu的):
请帮助。我在Mac论坛Docker中浏览时终于找到了答案:
(非常感谢Onigotz!)
我在端口3128上运行的计算机上使用CNTLM,因此使用以下设置对我很有效:
192.168.65.1因为这是您的计算机在Docker虚拟网络上的IP地址
3128因为这是我正在运行CNTLM的端口
应用这些设置并重新启动Docker后,
我想在docker-compose文件中设置一个标志,如果我不需要,我的db卷是否不会在容器外部持久化,但我仍然需要一个卷条目,如果我的db很小,那么我不希望它在容器外部持久化。您可以使用两个docker-compose.yml文件
docker-compose.yml
docker-compose.small.yml
覆盖数字#2中的卷部分并运行:
docker-compose -f docker-compose.yml -f docker-compose.small.yml up -d
有
这是我的Dockerfile:
FROM debian
MAINTAINER Andrew Ford<andrew.ford@gg.com>
RUN apt-get update
COPY entrypoint.sh /
ENTRYPOINT ["/entrypoint.sh"]
然后我跑:
docker build --no-cache=true -t test/dockerfile-sayhello .
docker run test/dockerfile-sayhell
我在docker容器上安装了GitLab,并尝试使用SubGit。从SVN到Git的同步工作得很好,但我在尝试进行Git推送时遇到了问题。我得到以下错误,daemon.pid文件从subgit目录中删除
Delta compression using up to 4 threads.
Total 5 (delta 4), reused 0 (delta 0)
remote:
remote: SubGit ERROR REPORT (SubGit version 3.2.2 ('Bobique'
我在学docker,只是把脚弄湿了。。。我开始请求您的原谅,因为我可能会很糟糕地使用术语:-(
我已成功构建了第一个容器并在本地运行。
容器图像是一个node.js+expressweb应用程序。
在本地,我通过以下方式运行映像:
docker run -p 80:3000 myname/myimage
如果我将浏览器指向本地服务器IP
http://192.168.1.123:80/
我访问我的应用程序,享受它的荣耀
然后,我使用以下命令将其推送到docker hub:
docker pu
我相信罪魁祸首是船长,他似乎没有在7946端口监听netstat显示7946正在侦听节点,但未侦听主节点。当我检查系统日志中的节点时,我看到以下错误
level=error msg="Failed to join memberlist [10.0.0.12] on retry: 1 error(s) occurred:\n\n* Failed to join 10.0.0.12: dial tcp 10.0.0.12:7946: getsockopt: connection refused"
我是分布式系统的新手,我正在使用docker建立一组zookeepers
例如,我启动了三个zookeepers:
services:
zoo1:
image: zookeeper
restart: always
ports:
- 2181
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server
我创建了包含2个子模块的playframework项目
子模块“核心”。可在…下找到。。。例如
子模块“聊天”。可在…下找到
我创建了docker图像
sbt docker:publishLocal
当我在docker内部启动应用程序时,我的模块可以通过URL访问,而不需要模块名称。例如
(必须是)
(必须是)
所以它不能正常工作。如何在docker中使用正确的URL?docker不负责设计URL,甚至不负责映射URL,它只映射端口(9000)
PlayFrameworkWebconf是您需要
Docker-compose.yaml:
version: "3"
services:
mysql:
image: mysql:5.7
environment:
MYSQL_HOST: localhost
MYSQL_DATABASE: mydb
MYSQL_USER: mysql
MYSQL_PASSWORD: 1234
MYSQL_ROOT_PASSWORD: root
ports:
- "3
我想做我的第一个docker容器
我根据ubuntu的docker教程安装了dokcer ce
我创建一个文件夹并将Dockerfile放入其中
FROM docker/whalesay
RUN apt-get update && apt-get install -y figlet fortune && rm /var/apt/*
CMD figlet "Hy SUPINFO" | cowsay -n && /usr/games/fortune
我已使用yum进程在Centos 7上安装了Docker。下面是systemctl status docker.service-l的输出:
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor preset: disabled)
Active: active (runni
我尝试了一下,但不起作用,我发现输入设备不是TTY错误
如何解决这个问题?文档中说如何在管道中使用Docker是设置Docker代理所必需的
pipeline {
agent {
docker { image 'node:7-alpine' }
}
stages {
stage('Test') {
steps {
sh 'node --version'
}
我收到一条错误消息“error from daemon:container not running”。为什么?我在分离模式下启动了容器,因此它应该正在运行?我尝试了-it标志进行交互,但没有成功。我还尝试了休眠docker,但没有成功
sh "docker run -d --name mongocontainer19"
sh "docker exec mongocontainer19 mongo mongodump"
--name给出了容器名称,在您的例子中是mongocontainer
标签: Docker
alpinedocker-volume
考虑一下这个场景
From package-alpine:latest as package
FROM alpine:latest
COPY --from=package /opt/raw /queue/raw
RUN filter-task /queue/raw --> this will change raw itself
队列中需要一个卷,以便在运行时可以直接在主机上获取完成的原始数据
想知道这是否可能,如果可能,语法是什么
尝试使用docker卷,但这实际上使队列目录为空
do
我正在尝试编辑位于/etc/cassandra/cassandra.yaml的docker容器内的cassandra.yaml,我可以从容器内的日志中编辑它,但如何从主机中编辑它 从主机到容器有多种实现方法。您可以简单地使用COPY或RUN-in-Dockerfile,或使用sed、cat等基本linux命令将配置放入容器中。另一种方法是在运行cassandra映像时传递环境变量,该映像将这些环境变量传递给生成容器。此外,还可以使用docker卷将其从主机装载到容器,并且可以将所需配置映射到ca
我想在Docker swarm环境中设置特定于节点的CPU使用限制。
我知道我们可以使用yaml文件设置CPU使用限制,用于在所有节点上部署服务,如
resources:
limits:
cpus: '0.50'
但是,这将在所有节点上设置CPU使用限制。如果我想为每个节点设置不同的CPU限制,该怎么办。
如何设置特定于节点的cpu限制值 是否要为整个节点设置cpu限制?设置每个服务不是更好吗?@MazelTov我必须在所有节点上启动一个服务,但不同节点上
我正在创建一个将在其中运行java应用程序的映像。Java应用程序进程创建命令从映像内部的配置文件获取参数。我想使用环境变量来设置那些配置文件内容。我不知道如何修改这些值。当我只是复制文件时,它只是复制env变量名
FROM base-image
ARG SERVICE=test
ENV SERVICE $SERVICE
COPY runtime.properties /tmp/
RUN chmod 700 /tmp/runtime.properties
# here i am creating
我正在k8s集群中使用flannel网络插件。还有一个特殊的节点,它有一个内部IP地址和一个公共IP地址,可以通过ssh连接到其中
在我使用kubeadm添加节点后,我发现k get node xx-o yaml返回flannel.alpha.coreos.com/public ip注释,其中包含公共ip地址和,这使得其他节点无法访问内部Kubernetes pod
apiVersion: v1
kind: Node
metadata:
annotations:
flannel.al
我知道这个错误以前已经在StackOverflow上发布过,并且也有很多解决方案/答案。但是,我已经看过所有这些答案,找不到任何可行的解决方案
我正在运行一个Hyperledger结构网络,其中只有一个对等方和订购方。他们的Docker容器暴露了以下端口。对等机上为7051:7051和7053:7053,订购机上为7050:7050。我正试图配置普罗米修斯,通过遵循官方标准来分析指标
正如文档中所提到的,我通过在docker-compose.yaml的ports部分将本地机器的9443端口映射为
我已经配置了Jmeter并对其进行了停靠,允许用户通过docker run将3个参数传递给命令行,即
线程
循环计数
持续时间
现在,我想让用户能够选择通过循环计数为特定数量的循环运行特定测试,或者通过持续时间为特定时间运行特定测试。但问题是,如果用户提供loopCount但不提供Duration测试失败,但如果在JMeter测试中禁用了调度程序,则测试成功。
但是,如果禁用了调度程序,则用户传递给Duration参数的值将不被接受。只是想知道是否有一种方法可以根据用户传递的参数在Jmeter中
这个问题相当简单,但我似乎无法用谷歌搜索它。基本上,我正在运行以下命令,并且正在裁剪输出:
$ docker service scale omni_platform_omni_gallery_db=1
omni_platform_omni_gallery_db scaled to 1
overall progress: 0 out of 1 tasks
1/1: invalid mount config for type "bind": bind source path does not ex
我正在上载docker容器的映像及其各自的大小。通过Fabric 1.4.x,NodeJS链码的默认运行时容器基于Fabric baseimage,大约为1.4GB。Fabric 2.0及更高版本为节点CC使用专用的、基于Alpine的容器,总体占用空间小得多。您使用的链码类型是什么?node,Go,Java?@david_k我现在正在使用node。Dockerfile的实际文本对于诊断此问题至关重要(请不要将终端窗口的截图粘贴到问题中!)。但是从您所展示的内容来看,您似乎只是从非常大的Dock
若节点上的所有容器管理都由swarm完成,那个么停止的容器和旧图像中是否有“韭菜”?那么我应该定期运行docker system prune还是全部由swarm完成?我创建了一个运行dockerCleanUp.sh的cron作业:
#!/bin/bash
docker rm $(docker ps -aq)
docker volume rm $(docker volume ls -q)
docker rmi $(docker images -aq)
prune可能不会清理所有容器/卷/图像,但
我是sawtooth的新手,目前正在尝试在两个独立的主机(目前在同一个LAN网络中)上安装两个sawtooth节点
我使用文档中的撰写文件作为起点。
正如你从我的
我创建了两个独立的组合文件:
:在创建区块链和genesis区块的第一台主机上启动
:启动第二台主机作为连接到第一台主机的对等主机
在第二台主机上,我还创建了一个.env文件
SEEDS=tcp://<local-ip-of-first-node>:8800
最后两条消息每隔一分钟左右重复一次
起初,我不知道在doc
我已经多次看到以下命令停止所有docker容器:
docker stop$(docker ps-a-q)
有两件事我不清楚:
docker ps-a打印所有容器,而不仅仅是正在运行的容器,那么停止已经停止的容器有什么意义呢
如果docker ps不返回/打印任何内容(没有正在运行的图像),则docker stop会提示参数不足
我错过了什么?在docker之后清理环境的最佳方法是什么?如果docker ps为空,则此操作将不会运行:
docker ps -q | xargs --no-run-i
我有一个github存储库、一个docker存储库和一个AmazonEC2实例。我正在尝试使用这些工具创建CI/CD管道。想法是在github存储库主分支发生推送时,将docker容器部署到ec2实例。我已经使用github操作来构建代码、构建docker映像并将docker映像推送到docker hub。现在,我想将最新的映像从docker hub拉到远程ec2实例,并运行相同的映像。为此,我尝试从github操作执行ansible命令。但是我需要指定.pem文件作为ansible命令的参数。
我有一个正在运行的Docker容器,并希望使用VSCode远程容器插件连接到它
是否可以让VSCode在附加脚本时运行脚本?设置容器需要一些自定义操作。无法将这些操作烘焙到Dockerfile/Image中
是否可以在连接到正在运行的容器时配置Docker exec参数。(这对于Docker在创建新容器时使用.devcontainer运行是可能的,但是我还没有找到关于Docker exec的任何关于已经运行的容器的信息)
有一个“postAttachCommand”允许您在连接到正在运行的容器的
请参阅下面的命令:
docker build -t iansbasecontainer:v1 -f DotnetDebug.Dockerfile .
它创建一个容器,如下所示:
DotnetDebug.Dockerfile如下所示:
FROM microsoft/aspnetcore:2.0 AS base
# Install the SSHD server
RUN apt-get update \
&& apt-get install -y --no-install-
我遇到了一个奇怪的情况:
今天早上,我在ubuntu 16.04上配置了一个docker-compose.yml文件,一切正常,后来我在另一台装有ubuntu 16.04的电脑上尝试了相同的docker配置,但没有成功。
elasticsearch图像出现并消失,端口9200和5601未被占用
docker compose.yml:
version: '3'
services:
elasticsearch:
image: docker.elastic.co/elasticsearch
我正在搜索中描述的/data文件夹。
我在Kubernetes上运行一个基本的Prometheus Docker容器prom/Prometheus。如果我在容器内执行shell,工作目录是/prometheus,它包含wal目录,但它没有文档中提到的结构,我找不到任何度量数据
我可以通过普罗米修斯GUI查询的度量存储在哪里?因为您可以在Github()上查看普罗米修斯Dockerfile,工作目录是/Prometheus,您可以在那里找到所有度量和数据
下面是/prometheus目录中的数据
如果我尝试这样启动docker服务器:
systemctl start docker
我得到:
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.
运行:
systemctl status docker.service
显示:
● doc
对于通知,我在Grafana中添加了通知频道,类型为Email,然后单击“发送测试”按钮,但它给出了-
SMTP not configured, check your grafana.ini config file's [smtp] section
我已将Grafana安装为docker容器,因此我进入容器内部,用SMTP详细信息更新了Grafana.ini文件,并用-
docker restart grafana
现在转到通知频道并单击“发送测试”,但仍然看到相同的错误
请帮助理解此处可能
我对周围的信息感到有点迷茫,我很高兴能为我的问题提供一些建议
我已经构建了一个Rails应用程序,其中包含一些工具,我认为其他人在自己的服务器上使用他们的数据会非常有用。为了方便他们,我想将我的应用程序作为Docker容器提供。原则上,我熟悉我的应用程序的对接,但仍有一些问题需要解决,以使设置对其他人尽可能友好:
我的想法是让人们下载一个包含MAKEfile、docker-compose.yml和一些html模板的归档文件,用于about页面和免责声明等静态和独立页面。
然后docker-com
我有下面的docker-compose.yml文件,它将Chrome、Firefox节点绑定到Hub
version: "3"
services:
selenium-hub:
image: selenium/hub
container_name: selenium-hub
ports:
- "4444:4444"
chrome:
image: selenium/node-chrome-debug
我正在尝试在Kubernetes上运行我的应用程序。My docker容器具有环境变量,例如在Dockerfile中设置的PATH和LD_LIBRARY_PATH。我试图在yaml文件中更改它们,如下所示:
env:
- name: LD_LIBRARY_PATH
value: "foo:$(LD_LIBRARY_PATH)"
上面的配置不起作用,我只是在pod中看到LD\u LIBRARY\u PATH=foo:$(LD\u LIBRARY\u PATH)。此方法似乎
我需要集成一个预构建的Docker映像,作为Yocto构建的一部分。
我的Docker映像已经构建在外部服务器上,可以通过url访问(htps://myserver/mydockerbuild/myDokerImage)
我需要编写一个菜谱来获取这个外部Docker映像,并将其(连同我的其他菜谱)安装到目标构建(Yocto构建的结果)上,因此在我使用Yocto构建的结果启动设备后,我在基于poky dunfell的linux上编写Docker运行myDockerImage(Docker引擎已经是
我正在尝试在Centos 8服务器上使用docker在本地部署mattermost。我正在为我的发行版使用此指南和剪裁-
我已经下载了docker,docker compose使用了以下指南,再次根据Centos定制了它-
但是它在以下方面失败:docker compose build
我对YAML文件使用了两个在线检查程序,它们恢复得很好。最初我有一些缩进错误,我修正了。我从1、2、3.2修改了版本字段,但没有成功
不确定还要修改什么。我正在VMWare Workstation中运行此功能,不
我正在尝试使用无服务器框架在webscraper上工作,我希望用户可以轻松地在本地运行该框架,而无需在其本地计算机上安装任何必要的依赖项。我正在使用无服务器离线sqs和托管在Docker容器上的本地Elasticmq服务器
目前,我运行了一个docker compose文件,然后在另一个运行良好的终端中脱机运行serverless。docker compose.yml文件如下所示:
# docker-compose.yml
version: '3'
services:
database:
我在Docker中运行了一个grails应用程序,我试图添加ApacheDerby服务器,以便使用Docker multi-stage在同一映像中运行。但是当我添加Derby时,grails应用程序就不能运行了
所以我从这个开始:
$ cat build/docker/Dockerfile
FROM azul/zulu-openjdk:13.0.3
EXPOSE 8080
VOLUME ["/AppData/derby"]
WORKDIR /app
COPY holder-0
在运行docker的旧服务器上,我有两个运行ipam和mysql的容器。mysql已经挂载了一个卷,在停止容器后,我将该卷的内容复制到一个新的服务器上,复制到目录中:
/mnt/dockerdata/vols/ipam/phpipam mysql
接下来,我在新服务器上创建一个卷:docker volume create--driver local--opt device=/mnt/dockerdata/vols/ipam/phpipam mysql phpipam mysql--opt typ
我有docker compose 1.25.4和docker 19.03。我如何知道它支持哪一版本的Compose文件格式,而不必尝试一堆或搜索发行说明等
我通过反复试验确定docker Compose 1.25.4支持的最高文件格式版本是3.7。因此,我的docker-compose.yml需要版本:“3.7”
但是,如果我需要通过编程来确定这一点呢?还是可靠的,没有尝试和错误,没有查看发行说明
网站上的文档建议最高版本应该是3.8,但这不起作用。事实上,发行说明表明3.8从docker co
我一直在经历一个问题,即使我能在网上读到所有的东西,我还是会被卡住
我为MongoDB开发了一个“抽象”,并进行了一些单元测试和一些E2E测试。对于“端到端”测试,我需要MongoDB在我的管道中运行。昨天我在CloudBuild上,但今天我在Gitlab上。。。我不能再运行这些测试了
我有以下资料:
gitlab-ci.yml
e2e_测试/docker-compose.yml
生成文件
正如你所看到的,我已经在网上尝试了一些,比如DOCKER\u HOST但是。。到目前为止,一切都不起作
直到最近,我在使用带有Ubuntu映像的远程容器(通过Dockerfile和docker compose,因为我还需要运行mongodb容器)方面没有任何问题。诚然,我已经一个多月没有运行我的远程容器了。我试图在我的Apple MacBook Pro上的最新版本的VS代码上运行我的远程容器,并在基本上/dev/null:Permission denied终止VS代码服务器安装的情况下获得以下输出。(虽然容器实际上正在运行)我以为这将被隔离到M1上运行,但是现在它也出现在我的Intel MacBo
我有.NET Core web app,我正在尝试使用以下命令构建映像:
docker build -f "C:\myapp\Dockerfile" --force-rm -t infoeditor --label "com.microsoft.created-by=visual-studio" --label "com.microsoft.visual-studio.project-name=InfoEditor.Web" --bu
我试图通过docker api通过传递buildargs参数来构建docker映像
我的尝试:
curl -X POST -H "Content-Type:application/tar" —unix-socket /var/run/docker.sock —data-binary "@Dockerfile.tar.gz" 'http://localhost/build?buildargs={"TIMESTAMP":"time
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 947 页