我想创建一个在各自的机器上运行弹性搜索实例,MongoDB实例和grails应用程序的Docker Swarm集群。我正在使用Docker Machine设置我的Docker Swarm集群
swarm-01:
mongodb
mongodb_ambassadorswarm-02:
elasticsearch
elasticsearch_ambassador群-03:
mongodb_ambassador
elasticsearch_ambassador
的Grails
安装的最后一步,使用以下命令运行实际的grails应用程序:
docker run -p 8080:8080 -d --name grails-master --volumes-from maven --link mongo:mongo-master --link es:es-master my-grails-image
Run Code Online (Sandbox Code Playgroud)
失败并显示错误:
来自守护程序的错误响应:无法找到满足所有依赖关系的节点:--volumes-from = maven --link = mongo:mongo-master --link = es:es-master
大使容器和Maven数据容器都在同一节点上运行。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
74677dad09a7 svendowideit/ambassador "/bin/sh -c 'env | gr" 18 minutes ago Up 18 minutes 9200/tcp, 9300/tcp swarm-03/es
98b38c4fc575 svendowideit/ambassador "/bin/sh -c 'env | gr" 18 minutes ago Up 18 minutes 27107/tcp swarm-03/mongo
7d45fb82eacc …Run Code Online (Sandbox Code Playgroud) Windows上Docker放置东西的标准路径是:
C:\Users\<USER>\.docker
Run Code Online (Sandbox Code Playgroud)
我们需要把它放在这里:
D:\Docker
Run Code Online (Sandbox Code Playgroud)
我们找不到有关在何处或如何更改该设置的任何信息.任何提示都表示赞赏,谢谢!
我正在使用docker-machine在digitalocean Droplet上创建一个盒子.我已经为该主机部署了一个简单的hello world docker容器,它工作正常.
当我docker-machine ls在我的主计算机上执行操作时,我看到digitalocean驱动程序像冠军一样运行.
我现在希望能够移动到我的笔记本电脑并docker-machine ls看到数字海洋驱动程序也在那里运行,但目前还不清楚如何"共享"机器,以便可以从两台不同的计算机访问它.
思考?
我正在测试很多微服务.我将其中的一些组合在一个docker-compose文件中,如:
agent:
image: php:fpm
volumes:
- ./GIT:/reposcm:ro
expose:
- 9000
links:
- elastic
elastic:
image: elasticsearch
expose:
- 9200
- 9300
Run Code Online (Sandbox Code Playgroud)
然后我开始第一个 $docker-compose up
在另一个目录中,我将开始另一个"微服务" $docker-compose up.但我得到:
ERROR: Couldn't connect to Docker daemon - you might need to run `docker-machine start default`.
Run Code Online (Sandbox Code Playgroud)
如何为docker-compose.yml指定docker机器?
$docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM
default - virtualbox Running tcp://192.168.99.101:2376
my_test - virtualbox Running tcp://192.168.99.102:2376
Run Code Online (Sandbox Code Playgroud)
只有default机器可以运行"微服务".
如何指定目标机器docker-compose.yml?
我希望我的两个容器可以在VM主机之外的单独的特定IP地址(192.168.0.222,192.168.0.227)上使用,而不需要端口映射.这意味着我希望通过使用其IP来直接访问容器上的任何端口.我已经在VM主机外部的网络中运行的机器在192.168.0.1-192.168.0.221范围内.
现在可以使用Docker 1.10.0,如果是这样,怎么样?
我使用的是OS X 10.11 docker version 1.10.0, build 590d5108和docker-machine version 0.6.0, build e27fb87使用boot2docker/VirtualBox驱动程序.
我一直试图弄清楚这一点,没有运气,我已经阅读了以下问题和答案:
我正在使用Docker Machine开发OSX.我使用快速启动终端让它创建default极小的VM:
在OS X安装中,docker守护程序在名为default的Linux VM中运行.默认情况下是一个轻量级Linux VM,专门用于在Mac OS X上运行Docker守护程序.虚拟机完全从RAM运行,下载量小〜24MB,启动时间约为5秒.
我想安装dnsmasq,但这些说明都不起作用.我希望再次遇到这种问题,所以除了安装dnsmasq之外我想要一些工具,比如apt-get能够轻松安装东西.由于命令很少,我不知道如何开始.我有curl,wget,sh,git,和其他非常基本的命令.我没有以下任何一项:
apt
apt-get
deb
pkg
pkg_add
yum
make
gcc
g++
python
bash
Run Code Online (Sandbox Code Playgroud)
我能做什么?我应该下载更完整的虚拟机,如Ubuntu吗?我的笔记本电脑不是很快,所以一个非常轻巧的VM对我很有吸引力,但这开始看起来有点多了.
我尝试docker for Windows 10使用next命令创建一个docker-machine :
docker-machine create --driver hyperv default
Run Code Online (Sandbox Code Playgroud)
但我得到了下一个错误
Error with pre-create check: "Hyper-v commands have to be run as an Administrator"
Run Code Online (Sandbox Code Playgroud)
任何人都知道如何解决这个问题?谢谢
我使用docker-machine在AWS上管理Docker节点。今天,我尝试创建一个新节点,但由于实例类型与指定的AMI之间不兼容而失败:
docker-machine create --driver amazonec2 --amazonec2-instance-type t2.micro --amazonec2-ami ami-b4a015d4 certbot-config
Running pre-create checks...
Creating machine...
(certbot-config) Launching instance...
Error creating machine:
Error in driver during machine creation:
Error launching instance: InvalidParameterCombination: Virtualization type 'hvm' is required for instances of type 't2.micro'. Ensure that you are using an AMI with virtualization type 'hvm'. For more information, see http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/virtualization_types.html
Run Code Online (Sandbox Code Playgroud)
无论如何,我都会纠正错误。我的问题是我似乎创建了一个幽灵机器。如果我运行docker-machine ls,则会得到以下信息:
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
certbot-config - amazonec2 Error Unknown MissingParameter: The request must contain the parameter InstanceId …Run Code Online (Sandbox Code Playgroud) 运行docker for Mac 17.06.0我创建了一个docker文件,用于创建Apache服务器的映像.请注意,它暴露了端口80.
FROM ubuntu:16.04
RUN apt-get update
RUN apt-get install -y apache2
ADD index.html /var/www/html/
CMD /usr/sbin/apache2ctl -D FOREGROUND
EXPOSE 80
Run Code Online (Sandbox Code Playgroud)
在Dockerfile的同一个文件夹中,我创建了一个简单的index.httml文件.
然后我使用构建并运行它
docker build -t webserver .
docker run -d webserver
Run Code Online (Sandbox Code Playgroud)
我使用了运行容器的IP地址
docker inspect [container_name] | grep -i IPAddress
Run Code Online (Sandbox Code Playgroud)
当我卷曲的时候
curl 172.17.0.2
Run Code Online (Sandbox Code Playgroud)
我没有回答.
我在运行-p 80:80并在curl命令中使用localhost时得到了答案.
curl localhost
Run Code Online (Sandbox Code Playgroud)
但我想明白为什么我不能卷曲容器IP.
问题:
我一直在尝试为Docker设置Docker并在Docker中运行Asp.Net core 2.0应用程序.我在下方设置了项目.
我创建了一个示例Asp.Net Core2.0应用程序并选择了Docker来运行此应用程序.
以下是详细信息 -
默认项目设置参考图像 - Asp.Net core2.0项目设置
以下是超时问题的详细信息.
Time out has expired and the operation has not been completed.
at System.ServiceProcess.ServiceController.WaitForStatus(ServiceControllerStatus desiredStatus, TimeSpan timeout)
at Docker.Backend.Processes.WindowsDockerDaemon.TryToStartService(String args, Dictionary`2 env) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\Processes\WindowsDockerDaemon.cs:line 138
at Docker.Backend.ContainerEngine.Windows.DoStart(Settings settings, String daemonOptions) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\ContainerEngine\Windows.cs:line 200
at Docker.Backend.ContainerEngine.Windows.Start(Settings settings, String daemonOptions) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Backend\ContainerEngine\Windows.cs:line 78
at Docker.Core.Pipe.NamedPipeServer.<>c__DisplayClass9_0.<Register>b__0(Object[] parameters) in C:\gopath\src\github.com\docker\pinata\win\src\Docker.Core\pipe\NamedPipeServer.cs:line 47
at Docker.Core.Pipe.Nam
Run Code Online (Sandbox Code Playgroud)
任何人都可以建议超时的问题,我已经尝试并重置了docker
docker ×10
docker-machine ×10
amazon-ec2 ×1
apt ×1
asp.net-core ×1
boot2docker ×1
docker-swarm ×1
linux ×1
macos ×1
window ×1
windows ×1