Tag: docker

如何按名称sorting“docker service ls”

我使用Docker Swarm 1.13.1,按名称(AZ)列出服务是非常实用的。 我不认为Docker本身支持这个壮举,所以我期望一些awk,sorting和其他一些小黑客。 到目前为止,这是我能得到的最接近的: root@N01-par1-dev-e:~/deploy-setup# docker service ls | sort -k2,2 -k1 yru8n6zxmp08 consul global 4/4 consul:latest 1lb98n83fttr mysql replicated 1/1 devmtl/percona-fire:5.7.16-10-1 ID NAME MODE REPLICAS IMAGE i75t4zef8x8c papertrail global 4/4 gliderlabs/logspout:latest 4s14t7f13fp8 portainer replicated 1/1 portainer/portainer:1.11.3 8wojufyq3dwn resilio global 4/4 devmtl/resilio-fire:2.4.4-alpine-0 vn8fhhfvb6pw sematext global 4/4 sematext/sematext-agent-docker:1.31.11 mwxtlff6jyl5 thm-s0001-iamfoo replicated 1/1 devmtl/iam-this-ctn:1.0.1-alpine-0 o8p4q85axkwy thm-s0002-iambar […]

如何将Azure WordPress + MySQL Ubuntu 16.04 docker从PHP5.6升级到PHP7?

一般来说,我是新来的Azure和docker/虚拟机。 我刚刚在S1 Azure虚拟机上安装了以下Docker镜像,并且我非常有兴趣将基础PHP5.6版本升级到7.我无法在线find很多信息,似乎第一步是我需要SSH到Docker中,然后执行一些命令。 docker图片: https : //azuremarketplace.microsoft.com/en-us/marketplace/apps/Docker.wordpressplusmysql-ARM 我的wordpress是4.7.2最新版本。 我需要什么步骤才能在Ubuntu内部执行更新命令? 谢谢!

AWS ElasticBeanstalk Multidocker未使用正确的Cmd创buildECS任务

我使用multidocker选项在AWS ElasticBeanstalk上部署节点应用程序。 该应用程序似乎部署成功,但是,我注意到,应用程序(在我的docker)实际上并没有运行。 当我docker inspect <container_id>正在运行的容器docker inspect <container_id> ,看到"Cmd": null 。 如果我检查由beanstalk创build的ECS任务定义,我也看到"command": null" / 但是 ,如果我手动运行容器(通过docker run -d myimage:latest ),我看到"Cmd": ["node", "server.js"]和应用程序正确服务。 这是我的Dockerfile中包含的正确的CMD 。 我的ECS任务定义如何正确读取我的泊坞窗图像中的CMD ? 我想添加一个命令到我的Dockerrun.aws.json ? 我找不到任何文件。 Dockerrun.aws.json : { "AWSEBDockerrunVersion": 2, "volumes": [ { "name": "node-app", "host": { "sourcePath": "/var/app/current/node-app" } } ], "containerDefinitions": [ { "name": "node-app", "image": "1234565.dkr.ecr.us-east-1.amazonaws.com/my-node-app:testing", "essential": true, […]

DC / OS和并发部署

我们正在运行一个DC / OS集群,并且手动pipe理它,因为运行在其中的容器实例数量less,不需要太多的干预。 现在,我们要从Jenkins部署,而在Marathon插件的情况下,我们遇到了一个或多或less有趣的问题:共享卷。 我们所有的节点都有一个安装在/ srv上的NetApp,而且这些服务都有Docker容器卷,它们将某些容器path映射到/ srv中的子目录。 现在,当Jenkins作业导致重新部署服务时,它将在暂存新版本时离开旧容器,并在新容器达到“健康”状态时切换。 这是一个问题,因为所涉及的映像包含MongoDB和MySQL – 由于在后备数据库文件上存在并发访问,因此中断映像。 我怎样才能将旧的实例缩放到0,只有当旧的实例干净地停止,实际部署新的实例? 在DC / OS中设置共享的MongoDB / MySQL容器是我不太喜欢的,因为它会在开发者机器上的容器之间产生差异,以及容器被播种的数据库内容包含在图像中… 编辑:这个问题也经常咬我们,当有人不小心按下“重新启动服务”,因为不同于命名暗示,它不会做shutdown-wait-redeploy,但也舞台,然后切换…

我怎样才能确定为什么我的副本没有从群中开始?

我在我的pipe理器节点中使用了以下docker swarm命令来部署我的应用程序。 $ docker stack deploy –compose-file docker-stack.yml sb 这是docker-stack.yml文件。 version: "3" services: db: image: postgres:9.4 volumes: – db-data:/var/lib/postgresql/data networks: – backend deploy: placement: constraints: [node.role == manager] sample_blog: image: quay.io/repository/copley/sample_blog ports: – 3000:80 networks: – frontend deploy: replicas: 2 update_config: parallelism: 2 restart_policy: condition: on-failure networks: frontend: backend: volumes: db-data: 这是我运行命令时的输出: $ docker服务ls ID […]

用dockerbuild立主机目录

我对docker相当陌生,但我试图看看是否可以使用它构build一个项目的前端应用程序,并使用它构build的应用程序交给另一个工具。 所以理想情况下,我想: 1)使用Dockerfile设置环境。 2)运行npm run build 我不确定的是如何从主机的容器中访问生成文件夹? 我的docker文件是: FROM kkarczmarczyk/node-yarn:latest WORKDIR /app ADD . /app RUN yarn –ignore-engines RUN yarn run build 然后我做: docker build -t build-app 从提示看起来它正确构build,但我不知道如何从容器中获取构build的应用程序。 它的build筑物到容器上的一个/dist文件夹。 我如何从主机访问它?

如何将docker hub私有registry中的docker映像拖放到Azure容器服务(ACS)中?

我在Docker hub(hub.docker.com)中设置了一个私有的registry:rbiswas / http-service。 现在我试图通过执行以下步骤将此映像拖放到Azure容器服务(ACS)群集vm中: 首先我使用命令进入ACS集群: ssh -i /home/rbiswas/.ssh/acs_rsa -L 2375:localhost:2375 -N rbiswas@swarmclustermgmt.eastasia.cloudapp.azure.com -p 2200 然后我在另一个terminal中使用下面的命令: docker -H tcp://localhost:2375 login hub.docker.com docker -H tcp://localhost:2375 run -i -d -p 8080:8080 rbiswas/http-service 但即使成功login后,我也收到以下错误: docker: Error response from daemon: Not found. 但是,如果我使docker中心registry公开,那么docker运行命令是成功的。 那么如何从Docker Hub私有registry中获取?

Crontab无法正常工作

我有一个脚本/根/重新启动容器名称 #!/bin/bash /usr/bin/docker restart container_name 2>/dev/null /usr/bin/docker exec -ti container_name /path/launcher.sh 2>/dev/null 没有cron它的作品。 在crontab中只能工作第一个命令。 第二个不起作用。 权限700和归根 我将stderrredirect到文件/tmp/container_name.log中。 错误是 the input device is not a TTY

docker – 组成networking/端口处理

我有两个组件: hbas和ookeeper作为单个容器和hbase-printer(我的java代码)在我的主机。 我的目标是打印一些hbase表的内容。 问题是,连接到2181(动物园pipe理员端口)成功,但看起来像我正在指向端随机端口进行通信,这个端口是不公开的。 我正在使用docker-compose.yml : version: '2' services: hbase: image: dy1-dockerv2-local.jfrog.io/hbase:latest restart: always hostname: hbase-docker ports: – "60010:60010" – "60000:60000" – "60020:60020" – "60030:60030" – "9095:9095" – "8085:8085" – "8080:8080" – "2181:2181" – "9091:9091" – "9090:9090" expose: – "9091" – "2181" volumes: – ./data/hbase:/data – ./logs/hbase/:/opt/hbase/logs network_mode: "bridge" 在我的Java日志中,我得到: 23-02-2017 09:29:54,413 INFO [ClientCnxn]: [main-SendThread(localhost:2181)] […]

运行多个Docker容器的服务器将如何处理TCP限制?

首先,我读过这个问题 。 但我无法弄清楚我的select的正确答案。 Docker主机将限制TCP连接总数 Docker主机将在Linux内核中使用netfilter来向networking堆栈注册callback函数 Docker主机将在Linux内核中使用netlink来注册networking堆栈的callback函数 通过提供一个全双工通讯链接 我认为正确的答案是 – 2。 任何帮助赞赏。 谢谢