标签: docker

无法启动 Mac 版 docker 桌面

我第一次安装 docker Desktop for mac,但无法启动\xe2\x80\x99。\n我安装如下。

\n

\xe3\x83\xbb 在此官方页面( https://www.docker.com/get-started )注册并单击 Mac intel 芯片的下载按钮。

\n

\xe3\x83\xbb 打开 Docker.dmg 文件并将 Docker.app 拖放到应用程序中。

\n

\xe3\x83\xbb 对 docker 进行了重点搜索并启动了它。

\n

\xe3\x83\xbb 单击通知屏幕上的 \xe2\x80\x9copen\xe2\x80\x9d 按钮,该按钮显示 \xe2\x80\x9cDocker.app\xe2\x80\x9d 是从 Internet 下载的应用程序。您确定要打开它吗?

\n

此后应用程序没有任何响应。

\n

当前状态

\n

“应用程序”文件夹中有一个 docker 应用程序,位置有 Docker(带有弹出按钮)。\n我无法启动该应用程序,也无法使用任何 docker 命令。\n其他应用程序运行良好且舒适。

\n

我尝试重新启动我的电脑,关闭防火墙和 FireVault,然后再次安装,但发生了完全相同的事情。

\n

我使用的是装有最新版本 macOS Big Sur 11.6 的 MacBook Pro 16 (2019)。

\n

docker

166
推荐指数
8
解决办法
14万
查看次数

列表仅停止Docker容器

Docker为您提供了一种列出运行容器或所有容器(包括已停止容器)的方法.

这可以通过以下方式完成:

$ docker ps # To list running containers
Run Code Online (Sandbox Code Playgroud)

或者

$ docker ps -a # To list running and stopped containers
Run Code Online (Sandbox Code Playgroud)

我们有办法只列出已停止的容器吗?

containers docker

165
推荐指数
3
解决办法
13万
查看次数

为什么Docker容器图像如此之大?

我通过Fedora中的Dockerfile创建了一个简单的图像(最初为320 MB).

添加了Nano(这个1MB大小的小编辑器),图像大小已升至530 MB.我已经添加了Git(30-ish MB),然后我的图像大小天空火箭到830 MB.

这不是疯了吗?

我试图导出和导入容器以删除历史/中间图像.这项工作最多可节省25 MB,现在我的图像大小为804 MB.我也试过在一个上运行很多命令RUN,但我仍然得到相同的初始830MB.

我怀疑是否值得使用Docker.我的意思是,我几乎没有安装任何东西而且我打了1GB.如果我必须添加一些像数据库等严重的东西,我可能会耗尽磁盘空间.

任何人都有可笑的大小图像?你如何解决?

除非我的Dockerfile非常不正确?

FROM fedora:latest
MAINTAINER Me NotYou <email@dot.com>
RUN yum -y install nano
RUN yum -y install git
Run Code Online (Sandbox Code Playgroud)

但很难想象这里会出现什么问题.

docker

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

Docker Desktop WSL ext4.vhdx 太大

我安装了 WSL 以及 Docker Desktop。

\n

我尝试通过运行来尽可能多地清理docker

\n
docker system prune -a\n\ndocker volume rm $(docker volume ls -q -f dangling=true)\n
Run Code Online (Sandbox Code Playgroud)\n

然后我验证了

\n
\xe2\x9d\xaf docker system df\nTYPE            TOTAL     ACTIVE    SIZE      RECLAIMABLE\nImages          0         0         0B        0B\nContainers      0         0         0B        0B\nLocal Volumes   0         0         0B        0B\nBuild Cache     0         0         0B        0B\n
Run Code Online (Sandbox Code Playgroud)\n

但是,我看到我还有近 12G 被 WSL 使用。

\n

我假设这个文件与 docker 相关。尽管我移除了所有容器和卷,但为什么它仍然如此大?

\n

如何缩小它(或者我可以删除它吗?)

\n

在此输入图像描述

\n

docker windows-subsystem-for-linux wsl-2

163
推荐指数
4
解决办法
10万
查看次数

如何让docker-compose始终从新图像重新创建容器?

我的docker镜像是在Jenkins CI服务器上构建的,并被推送到我们的私有Docker Registry.我的目标是使用docker-compose配置环境,它始终启动图像的最初构建状态.

我目前在不同的机器上使用docker-compose 1.3.2以及1.4.0,但我们之前也使用过旧版本.

我总是使用docker-compose pull && docker-compose up -d命令从注册表中获取新图像并启动它们.我相信我的首选行为在某个时间点按预期工作,但从那时起docker-compose up开始重新运行先前停止的容器,而不是每次都启动最初构建的映像.

有没有办法摆脱这种行为?这种方式可能是在docker-compose.yml配置文件中连接的,在每次调用时都不依赖于"忘记"命令行中的某些内容吗?

PS.除了找到实现目标的方法之外,我还想更多地了解这种行为的背景.我认为Docker的基本思想是构建一个不可变的基础架构.docker-compose的当前行为似乎与这种方法完全冲突..或者我在这里错过了一些观点?

docker docker-compose

161
推荐指数
8
解决办法
13万
查看次数

无法连接到macOS上的Docker守护程序

我通常更喜欢使用brew在我的OSX上管理我的应用程序

我能够安装docker,docker-compose和docker-machine

docker --version
Docker version 17.05.0-ce, build 89658be
docker-compose --version
docker-compose version 1.13.0, build unknown
docker-machine --version
docker-machine version 0.11.0, build 5b27455
Run Code Online (Sandbox Code Playgroud)

我没有下载并运行'Docker for Mac'应用程序.

但是,当我试图跑

> docker run -d -p 80:80 --name webserver nginx
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
Run Code Online (Sandbox Code Playgroud)

我已经检查了sock文件

ls -lah /var/run/docker.sock /var/tmp/docker.sock
ls: /var/run/docker.sock: No such file or directory
ls: /var/tmp/docker.sock: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我也试过这个提出的解决方案:Mac OS X sudo docker无法连接到Docker守护进程.docker守护程序是否在此主机上运行?

但我收到此错误消息: …

macos docker macos-sierra

160
推荐指数
18
解决办法
9万
查看次数

如何正确清除Docker容器的日志?

docker logs [container-name]用来查看特定容器的日志.

是否有一种优雅的方式来清除这些日志?

docker boot2docker docker-compose docker-machine

158
推荐指数
16
解决办法
16万
查看次数

使用带有多个参数的--build-arg构建docker

根据文档,可以为标志定义多个args --build-arg,但我不知道如何.我尝试了以下方法:

docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5 number_of_replicas=2 --no-cache .
Run Code Online (Sandbox Code Playgroud)

=>这会返回错误.

我也尝试过:

docker build -t essearch/ess-elasticsearch:1.7.6 --build-arg number_of_shards=5,number_of_replicas=2 --no-cache .
Run Code Online (Sandbox Code Playgroud)

=>这将一个变量设置number_of_shards为值"5,number_of_replicas = 2"

知道如何定义多个参数吗?

arguments build docker

157
推荐指数
6
解决办法
11万
查看次数

从docker里面运行docker是否可以?

我在Docker容器中运行Jenkins.我想知道Jenkins容器是否也可以成为Docker主机?我正在考虑的是从Jenkins内部为每个集成测试构建启动一个新的docker容器(以启动数据库,消息代理等).因此,在完成集成测试后应关闭容器.有没有理由避免以这种方式从另一个docker容器内运行docker容器?

jenkins docker docker-dind

156
推荐指数
4
解决办法
7万
查看次数

Docker-compose:npm安装成功后,卷中没有node_modules

我有一个具有以下服务的应用程序:

  • web/ - 在端口5000上保存并运行python 3 flask Web服务器.使用sqlite3.
  • worker/- 有一个index.js文件,它是队列的工作者.Web服务器使用json API over port与此队列交互9730.工人使用redis进行存储.工作人员还将数据本地存储在文件夹中worker/images/

现在这个问题只涉及到了worker.

worker/Dockerfile

FROM node:0.12

WORKDIR /worker

COPY package.json /worker/
RUN npm install

COPY . /worker/
Run Code Online (Sandbox Code Playgroud)

docker-compose.yml

redis:
    image: redis
worker:
    build: ./worker
    command: npm start
    ports:
        - "9730:9730"
    volumes:
        - worker/:/worker/
    links:
        - redis
Run Code Online (Sandbox Code Playgroud)

当我运行时docker-compose build,一切都按预期工作,所有npm模块都/worker/node_modules按照我的预期安装.

npm WARN package.json unfold@1.0.0 No README data

> phantomjs@1.9.2-6 install /worker/node_modules/pageres/node_modules/screenshot-stream/node_modules/phantom-bridge/node_modules/phantomjs
> node install.js

<snip>
Run Code Online (Sandbox Code Playgroud)

但是当我这样做时docker-compose up,我看到了这个错误:

worker_1 …
Run Code Online (Sandbox Code Playgroud)

node.js docker ubuntu-14.04 docker-compose

155
推荐指数
10
解决办法
7万
查看次数