我第一次安装 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)。
\nDocker为您提供了一种列出运行容器或所有容器(包括已停止容器)的方法.
这可以通过以下方式完成:
$ 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)
我们有办法只列出已停止的容器吗?
我通过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)
但很难想象这里会出现什么问题.
我安装了 WSL 以及 Docker Desktop。
\n我尝试通过运行来尽可能多地清理docker
\ndocker 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镜像是在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的当前行为似乎与这种方法完全冲突..或者我在这里错过了一些观点?
我通常更喜欢使用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守护程序是否在此主机上运行?
但我收到此错误消息: …
我docker logs [container-name]
用来查看特定容器的日志.
是否有一种优雅的方式来清除这些日志?
根据文档,可以为标志定义多个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"
知道如何定义多个参数吗?
我在Docker容器中运行Jenkins.我想知道Jenkins容器是否也可以成为Docker主机?我正在考虑的是从Jenkins内部为每个集成测试构建启动一个新的docker容器(以启动数据库,消息代理等).因此,在完成集成测试后应关闭容器.有没有理由避免以这种方式从另一个docker容器内运行docker容器?
我有一个具有以下服务的应用程序:
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) docker ×10
arguments ×1
boot2docker ×1
build ×1
containers ×1
docker-dind ×1
jenkins ×1
macos ×1
macos-sierra ×1
node.js ×1
ubuntu-14.04 ×1
windows-subsystem-for-linux ×1
wsl-2 ×1