问题标签 [docker-ce]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - 无法使用 docker-compose run -e 选项传递环境变量
我正在尝试使用以下命令从命令行获取变量:
我的文件如下所示:
所有这一切都是为了让我可以运行一个由我在命令行中用作 BLABLA 定义的脚本,我尝试过使用官方文档。
尝试了几个选项,包括:
更新:我不得不提到的是,我总是得到:
即使我只是运行以下命令(无论是删除,停止..):
记录一下:我先拉图像,我从不构建它,但我的 CI/CD 工具会(gitlab),这会影响它吗?
我正在使用 docker-compose 1.18 版、docker 18.06.1-ce 版、Ubuntu 16.04
docker - 升级到 docker 18.09 后。由于 devicemapper 错误,所有容器都无效
今天我在一个 debian 伸展主机中将 docker 从 18.06 升级到 18.09。升级后,我们所有的图像和容器都“消失”了,即docker <command>
不再显示它们,但其中的数据/var/lib/docker
并没有消失。dockerd -D
揭晓:
所以我做的第一件事就是将 docker 降级到最后一个版本,以检查是否可以修复它。它有点工作。之前工作的 systemd 单元文件无法启动 docker 服务。结果我必须明确地传递-s devicemapper
到dockerd
现在,我不知道为什么,因为显然升级到 18.09 确实放了/var/lib/docker/overlay2
它,我只需要删除它就可以像以前一样启动 18.06。
因此,在我确认上一个 docker 版本已解决此问题后,我再次升级到 18.09 并尝试是否-s devicemapper
显式传递此处的技巧。但是在 18.09 中,守护进程甚至根本不会启动并抱怨:
我找不到任何关于devicemapper
被弃用或类似的东西,那么在升级之前我应该做什么?是否有任何一般性建议/最佳实践来避免此类问题?
docker - 如何在没有 Internet 和 Intranet yum 存储库的情况下安装 docker-ce?
我从官网下载了RPM包,但是安装的时候还是需要下载一些依赖。我需要在没有任何网络或存储库的情况下安装 docker-ce,所以我需要我依赖的所有 RPM 包以及它们的安装顺序。
Docker-CE 版本:18.03+
docker - 用于创建容器的 docker sdk
我正在使用 go-sdk for docker 通过以下代码创建容器
我了解采用容器名称的参数,如果我两次使用相同的名称,docker 引擎将拒绝它。此外,除非删除已停止的容器,否则无法使用该名称。我现在的问题是,如果我背靠背发送这样的请求,服务器端代码线程是否安全,或者有可能在短时间内出现 2 个这样的容器?基本上,我为此查看了其余的 api 服务器处理程序,但对行为将是什么并不太了解。
docker - centos 7服务器在构建docker镜像时不断重启
我在 centos 和系统上安装了 docker。我可以使用 docker pull 命令下载 docker 图像。但是当我使用 运行容器时docker run alpine
,服务器会重新启动。每次都在发生这种情况。我从 /var/log/messages | 找到了这个。grep 码头工人
代码
下面是我的配置:
现在当我跑步时docker pull alpine
。图片下载成功。
但是当我运行时docker run -it alpine
,我从服务器中注销并重新启动服务器。以下是我跑步时的日志cat /var/log/messages | grep docker
。
有什么建议么?
docker - Docker 在 Dockerfile 中执行 cp 或 mv 命令,但更改未显示在图像中
我对编程和 docker 很陌生。我确实遇到过这样的问题,我找不到答案。
我毫无问题地创建了我的自定义 docker 映像,然后我想将此映像用作我的基础以进行进一步的更改。所以我创建了我的 Dockerfile,它看起来像(见下文),当我使用 sudo docker build -t my-name 时。它执行没有问题,但是当我运行图像(sudo docker run -it my-name /bin/bash)时,我看不到目录列表中的任何变化(目录 /root/new_files/ 不存在)。
我似乎认为这是从我的这个图像所基于的第一个构建中以某种方式填充的,因为我之前多次执行这些命令而没有任何问题。
任何建议,可能导致 Docker 执行程序的原因,但在映像本身中看不到更改。
我的 Docker 文件:
我想指出,我尝试使用 'mv' 命令而不是 cp -a ......但运气不好,似乎用 'ln' 创建链接也不起作用。
但是,如果在构建后我输入图像并在运行图像中运行相同的命令,它可以正常工作,这意味着我可以运行 'cp -a $BASEDIR/TEMPLATE/ $BASEDIR/DEMO/' 并且它可以工作。
所以, --no-cache 没有帮助。下面是基础镜像 Dockerfile:
基础镜像 Dockerfile:
docker - 码头工人无法启动
我想安装 docker-ce,但它无法启动
我以这种方式安装 docker-ce:
我的系统类型:
码头工人版本:
错误信息详情:
我的 daemon.json(/etc/docker/daemon.json) 不存在,当我创建一个内容为 '{}' 的 daemon.json 时,也报错
我尝试了一些方法:
- 清除 /var/lib/docker
- 重新安装 docker-ce
docker的老版本docker和docker-io正常,但是没有ip和端口映射,所以我现在用docker-ce。
如何解决这个问题?
docker - 在 CentOS 7 上将 Docker 从 19.03.2 降级到 18.09.9
我一直在尝试在 CentOS 7 上将 docker 从 19.03.2 降级到 18.09.9。我通过 yum 安装了它。
这是我到目前为止所尝试的。
仅返回一个可用版本。
运气不好,呵呵!
尝试使用下载的 rpm 包对其进行降级。也没有运气。
最后,docker engine 命令运行成功,但是现在有两个不同的版本,虽然 API 是一样的。
两个不同的 docker 版本。
我现在如何降级客户端?
docker - apt-get 错误:找不到 'docker-ce' 的版本 '5:19.03.4~3-0~ubuntu-bionic'
文档
提供了安装特定版本的语法docker-ce
:
$ sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io
在类似的行上,下面dockerfile
使用上述语法:
在下面的行失败(构建时):
从命令中检索默认值的位置:apt-cache madison docker-ce | awk 'NR==1{print $3}'
在我的本地 docker 主机中
其中docker-compose build
给出以下错误:
apt-get -y install docker-ce docker-ce-cli containerd.io
可以下载和安装最新版本的ubuntu
包,但是为什么下载和安装特定版本的ubuntu
包失败?
docker - 为什么在 mac 上安装 docker 时未创建组名“docker”?
运行后:
UNIX 套接字文件不属于docker
我的 mac 笔记本电脑(docker 主机)中的组
因为docker
未创建组
docker
安装 docker 后,在 ubuntu 上创建组名
运行 jenkins docker 容器(作为DIND),但无法usermod -aG docker jenkins
在 Dockerfile 中执行。
目标是在 jenkins 容器中运行 docker 客户端,它可以通过 UNIX 套接字文件()与运行在 docker 主机上的 docker 守护进程通信/var/run/docker.sock
。
为什么在 mac 上安装 docker 不会创建docker
组?
如何解决这个问题?