Tag: docker machine

如何使用shell脚本检查docker服务是否已经在UCP上运行

我想检查docker服务是否正在运行。 如果它正在运行,我想删除该服务,并创build一个新的 我正在用shell脚本来完成这个任务 我正在提供我的shell脚本的代码片段,我正在面对Error response from daemon: service data-mapper-service not found if [[ "$(docker service inspect ${DOCKER_SERVICE_NAME} 2> /dev/null)" != "" ]]; then docker service rm ${DOCKER_SERVICE_NAME} else echo "service doesn't exist or may have been removed manually" fi docker service create \ –name ${DOCKER_SERVICE_NAME} \ –network ${OVERLAY_NETWORK} \ –reserve-memory ${10} \ –constraint node.labels.run_images==yes \ […]

使用docker sdk从Web应用程序向Docker机器发送命令

我是Docker的新手,在理解如何使用它方面遇到一些困难。 现在,我想知道是否有意义尝试发送命令到我的计算机上的docker机使用像Dockerode的SDK的JavaScript Web应用程序的客户端脚本。 我为Windows(17.06.0-ce)和Docker Toolbox安装了Docker CE,并且使用dockerterminal在默认机器上运行了一个容器。 现在我想知道我input的命令是否可以使用NodeJS从Web应用程序发送。 我试着用这个代码: import Docker from 'dockerode'; const docker = new Docker({host: 'myDefaultMachineHost'}); export function createLocalDb () { docker.pull('someImageFromDockerHub', function (err, stream) { if (err) console.log("Catch : " + err.toString()); stream.pipe(process.stdout, {end: true}); stream.on('end', function() { //run the container }).catch(function (err) { console.log("Catch : " + err.toString()); }); }); } […]

如何创build一个没有TLS的docker机主机

我有一个运行docker引擎的虚拟机。 现在我想通过docker-machine与我的其他vm连接到这个docker-host。 两个VM之间的networking已桥接,因此可用。 我可以通过curl 192.168.0.102:2375与docker vm通信,并且返回{"message":"page not found"} 创build由docker-machine create dev –driver none -url=tcp://192.168.0.102:2375 docker-machine产生以下 NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS dev – none Running tcp://192.168.0.102:2375 Unknown Unable to query docker version: Get https://192.168.0.102:2375/v1.15/version: x509: cannot validate certificate for 192.168.0.102 because it doesn't contain any IP SANs 正如你可以看到它通过https连接,我不希望它这样做。 我不希望它以这种方式连接。 有没有办法closuresTLS?

docker机与谷歌驱动程序卡在“等待SSH”,同时创build机器

操作系统:Debian Buster $ docker-machine version docker-machine version 0.13.0, build 9ba6da9 我正尝试使用docker-machine和google驱动程序在GCP上启动一台机器。 我已经创build了一个服务帐户密钥,将其保存为json,并将GOOGLE_APPLICATION_CREDENTIALS envvariables指向该文件。 然后,我运行以下命令并获得以下输出 $ docker-machine create –driver google –google-project <my project id> –google-disk-size 20 –google-zone us-east1-d –google-machine-type n1-standard-1 –google-machine-image "coreos-cloud/global/images/coreos-stable-1520-8-0-v20171026" –google-username core –google-use-internal-ip vm-test Running pre-create checks… (vm-test) Check that the project exists (vm-test) Check if the instance already exists Creating machine… (vm-test) Generating […]

在AWS上部署dockerized rails应用程序的最佳方法?

我dockerized现有的Rails应用程序,它正常运行开发。 我想将应用程序部署到生产环境。 我在本地使用了docker-compose。 应用程序堆栈如下所示: Rails应用程序 背景工人的邮件和清理 关系DB – postgres NoSQL DB – DynamoDB SQS队列 行动电缆 – Redis caching – Memcached 据我所知,部署选项如下: ECS(尝试这样做,但在将任务和任务定义与Docker组合概念相关的概念方面存在困难) ECS与Elastic Beanstalk 根据这个docker文档的Docker Machine: https : //docs.docker.com/machine/drivers/aws/ 我没有capistrano的经验,还没有在这个项目上使用它,所以我不打算将它用于docker部署。 我打算使用一些CD / CI解决scheme来轻松部署。 我需要关于可用选项的build议,以及如何以易于维护的方式部署堆栈,并以最less的部署工作推送更新?

当使用docker-machine时,拒绝在postgres容器中访问/ pgdata

使用docker-compose和docker for mac来运行一个postgres容器。 现在得到这个问题,当我切换到使用docker机。 有一些我缺less的configuration或我必须添加到我的Dockerfile的权限? 另外,为什么我得到这个问题与docker机,而不是得到它在docker的Mac? Dockerfile FROM postgres:9.6.4 ADD ./seed.sql /docker-entrypoint-initdb.d ENTRYPOINT ["/docker-entrypoint.sh"] EXPOSE 5432 CMD ["postgres"] 泊坞窗,撰写 pg: build: ./ volumes: – ./pgdata:/pgdata – ./seed.sql:/docker-entrypoint-initdb.d/seed.sql ports: – "5432" env_file: – db.env environment: – PGDATA=/pgdata 错误 pg_1 | The files belonging to this database system will be owned by user "postgres". pg_1 | This […]

docker工分配docker线程到包含的应用程序?

Docker在我的理解中是包含一个OS的应用程序。 所以,当一个应用程序产生线程或派生进程(可能产生线程)的请求,启动的线程是某种docker线程或请求直接到主机操作系统? docker是否以任何方式pipe理应用程序线程请求?

无法访问Windows中的Docker Machine实例中的容器内的MongoDB

我正在桌面上运行Windows 7,并login到VPN上的常规用户帐户。 为了开发软件,我们通常会开放一个开发虚拟机,然后在那里工作,但是最近我被分配了一个任务来研究Docker和Mongo DB。 我有非常有限的权限,可以在主机上安装。 这里是我的问题: 是否有可能连接到一个容器内的容器内的MongoDB实例从Windows并进行更改? 我最好喜欢使用像Mongo Management Studio这样的GUI工具来更改容器中的Mongo数据库。 通过检查Mongo容器,它具有列出的端口:0.0.0.0:32768 – > 27017 / tcp和docker-machine ip(vm名称)返回192.168.99.111。 我也在mongod.conf文件中注释了127.0.0.1绑定主机ip。 从迄今为止我所研究的情况来看,大多数用户通过用他们用-p设置的端口连接到他们的docker-machine IP来解决他们的问题,或者用-P给他们。 对我来说不幸的是,尝试连接192.168.99.111:32768不起作用。 我很难过,对这个环境来说还是个新鲜事物。 我能够进入容器与bash和操纵数据库那里,但我想知道如果我可以在Windows中做到这一点。 谢谢,如果有人可以帮忙。

使用IP连接到docker集装箱

我正在运行下一个命令: $ docker-machine ls NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS default * virtualbox Running tcp://192.168.99.100:2376 v17.06.2-ce $ docker-machine ip default 192.168.99.100 我有一些docker集装箱。 一旦运行django ,另一个postgres和第三个弹性search。 当我运行我的django容器时: # python manage.py runserver 0:8000 当我使用该网站时,它正在工作: localhost:8000/ 但是,当我使用时不可用: 192.168.99.100:8000 : 192.168.99.100:8000那里,我有浏览器消息: 此网站无法联系到 拒绝连接192.168.99.100。 尝试:检查连接 postgres和elasticseach容器也一样。 为什么我的docker容器没有应用default docker-machine ip ?

docker机无法连接到主机/守护进程,并使用不安全的registry

所以即时通讯docker机器有一些奇怪的问题。 我试图在我的Mac OS El Capitan上build立一个docker-machine,并且还有一些守护进程标记为一些不安全的registry。 我能够通过设置DOCKER_OPTS选项来标记我的不安全的Nexus dockerregistry来成功地推/拉本地Ubuntu安装(没有docker-machine)。 我正试图在我的Mac OS上完成相同的最终目标。 到目前为止,我已经使用默认安装来安装Docker Toolbox,并在terminal中尝试了以下内容。 Vinays-MacBook-Pro:~ Vinay$ sudo docker-machine create –driver virtualbox — engine-insecure-registry mynexusrepo.cloudapp.net:18443 –engine-insecure-registry mynexusrepo.cloudapp.net:18444 –engine-insecure-registry mynexusrepo.cloudapp.net:18445 dev Creating VirtualBox VM… Creating SSH key… Starting VirtualBox VM… Starting VM… To see how to connect Docker to this machine, run: docker-machine env dev Vinays-MacBook-Pro:~ Vinay$ eval "$(sudo docker-machine […]