Tag: 亚马逊 ec2

fleetctl load hello.service挂起

从coreos快速入门加载hello.service时 。 我在亚马逊ec2上运行。 该命令挂起。 Last login: Fri Sep 12 18:47:20 2014 from 10.0.11.90 CoreOS (alpha) core@ip-10-32-252-148 ~ $ cat /etc/os-release NAME=CoreOS ID=coreos VERSION=435.0.0 VERSION_ID=435.0.0 BUILD_ID= PRETTY_NAME="CoreOS 435.0.0" ANSI_COLOR="1;32" HOME_URL="https://coreos.com/" BUG_REPORT_URL="https://github.com/coreos/bugs/issues" core@ip-10-32-252-148 ~ $ fleetctl list-machines MACHINE IP METADATA 2be4e7f1… 10.32.252.144 – 73477fd7… 10.32.252.147 – 87abdeb3… 10.32.252.145 – adc91c39… 10.32.252.148 – core@ip-10-32-252-148 ~ $ fleetctl list-units […]

Docker在Amazon云上

我有一个Amazon Cloud EC2实例运行Dockerized flask应用程序。 我可以通过ssh连接到实例,但是当部署并尝试通过我的浏览器连接到公共DNS时,我无法访问已部署的flask应用程序。 网页总是会超时。 我如何查看正在运行的应用程序? 提前谢谢你!

如何在加载到其他主机时标记Docker(容器)的图像(.tar)文件?

我在本地机器上configuration了一个Docker镜像, tags由WordPress组成。 我已将此映像上传到AWS S3存储桶并从AWS EC2中提取映像。 我的问题是当我加载我的EC2实例的xxxx.tar.gz docker load -i xxxxx.tar.gz 它被加载,但是,存储库name和tag显示none REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE none none 271c6bafbc36 2 days ago 406.7 MB 任何人都可以告诉我,我们如何可以加载一个图像( .tar.gz )文件与预定义的name和tags

容器正在产生,但是当产生多个docker容器时,发出的命令失败

我们有一个自定义的Chrome扩展,可以执行一些与Web相关的任务。 这些任务需要是唯一的,因此我们继续在运行chrome的单个docker容器上运行每个任务的概念 我们目前有4个ec2实例(c4.2xlarge)运行ubuntu,然后在docker容器中使用chrome。 我们还有一个更小的ec2实例,它从mongodb中读取任务并将它们分配给一个接一个地填充它们的服务器。 所以如果一个任务被添加,它将被分配给其中一个实例,然后select它,创build一个容器执行任务,然后销毁该容器。 每项任务大概需要2到6分钟才能完成。 我们使用dockerode在nodejs中dynamic地创build和销毁容器。 我们做了很多的基准testing,得出每台服务器最多可以运行55个任务的结论,所以我们设定了每个服务器最多45个任务的阈值,以保证安全。 这是在所有4个实例上运行的代码的一部分 function start_polling_mongo() { Tasks.find({ server_id: instance_id, task_status: 1 }, function(err, all_tasks) { //update the tasks Tasks.update({ _id: { "$in": all_tasks } }, { task_status: 2 }, { multi: true }, function(err) { //perform the tasks all_tasks.forEach(function(task) { setTimeout(function() { run_task_in_container(task.task_id); }, 1000); }); }); }); setTimeout(start_polling_mongo, […]

AWS Mesosphere:docker守护进程的参数

我使用提供的模板在AWS中安装了Mesosphere DCOS。 现在我想重新启动所有的节点,但是将–insecure-registry参数添加到所有从节点(以及主节点),以便它们与我的dockerregistry进行通信。 所以我正在阅读最好的方法是在AWS模板的cloud-config脚本中。 因此,在AWS EC2启动configuration中,我复制了主节点的configuration,然后调整了用户数据,然后更新了自动扩展组并重新启动了主节点。 (真棒回答如何做到这一点在我如何使用Amazon EC2容器服务(ECS)不安全的dockerregistry? ) CoreOS文档build议将这些行添加到cloud-config的单元部分的末尾: https ://coreos.com/os/docs/latest/cloud-config.html units ….Many lines here – name: docker.service drop-ins: |- – name: 50-insecure-registry.conf content: | [Service] Environment=DOCKER_OPTS='–insecure-registry="10.0.1.0/24"' 但是,主人不会重新启动。 所以我不得不恢复我的改变。 这么多的问题: 一个。 为什么在此模板cloud-config中没有docker.service块? docker工人何时何地启动? 湾 我需要编辑flannel_docker_opts.env文件吗? 在这个云configuration中再次没有提到这样的文件。 但是在这个页面中提到: https : //coreos.com/flannel/docs/latest/flannel-config.html 特别感兴趣的是该页面的末尾: flanneld.service中的ExecStartPost将/run/flannel/subnet.env中的信息转换为Docker守护进程命令行参数(如–bip和–mtu),将它们存储在/run/flannel_docker_opts.env中。 在/run/flannel_docker_opts.env中包含docker.service源文件,其中包含带命令行选项的envvariables,并启动Docker。 事实上,我可以看到像早期的docker.service提到的文件,但在云configuration中再也没有提到法兰绒。 但是的确的,我发现上面提到的服务文件: /usr/lib64/udev/rules.d/80-docker.rules /usr/lib64/systemd/system/early-docker.service /usr/lib64/systemd/system/early-docker.socket /usr/lib64/systemd/system/docker.service /usr/lib64/systemd/system/docker.socket /usr/lib64/systemd/system/sockets.target.wants/docker.socket /usr/lib64/systemd/system/early-docker.target docker.service文件中提到/run/flannel_docker_opts.env文件,但在/ run文件夹中不存在: […]

docker机与亚马逊ami HVM不起作用

在selectAmazon AMI ami-606b6c60a (HVM)时, ami-606b6c60a docker-machine创buildAWS实例,但处于“停止”状态。 如果我切换到Amazon AMI ami-5fb8c835 (PV),它按预期工作。 $ docker-machine create –driver amazonec2 –amazonec2-ami=ami-60b6c60a \ –amazonec2-access-key=MyKey –amazonec2-secret-key=MySecret \ –amazonec2-security-group=vpc-wide-open-for-testing-only \ –amazonec2-root-size=8 test 额外信息: $ docker-machine -v docker-machine version 0.5.0 (04cfa58)

EC2 Docker领事集群

我确信这个答案是在那里,但是经过几次尝试我找不到或修复它。 这是用例: 1.>我有两个属于同一VPC的ec2实例,但具有不同的安全组 2.>这两个安全组都有22,80(公开),所有端口的所有stream量都打开了CIDR块10.20.0.0/16 3.> EC2实例的内部IP为10.20.0.51(server-1)和10.20.0.202(server-2) 4.>我正在使用以下命令在它们上运行两个dockerized consul服务器 server-1 : docker run -it -p 8400:8400 -p 8500:8500 -p 8600:53/udp -p 8301:8301 -p 8300:8300 -h node1 progrium/consul -server -advertise 10.20.0.51 -bootstrap-expect 2 server-2 : docker run -it -p 8400:8400 -p 8500:8500 -p 8600:53/udp -p 8301:8301 -p 8300:8300 –name node2 -h node2 progrium/consul -server -advertise 10.20.0.202 -join […]

Docker:是否有必要挂载一个新的分区

我想在Docker上安装一个产品。 它以前安装在Amazon的EC2服务器上。 安装从创build安装点/product 。 比他们用fdisk分区磁盘,他们正在创build一个新的分区。 之后,他们创build一个文件系统,并将新分区挂载到/product 。 我不熟悉这一点,但在我看来,主要目标是在一个新的磁盘上安装产品。 安装在Ubuntu:14.04上执行Ubuntu:14.04所以我只是想开始这样的: docker run -i -t ubuntu:14.04 /bin/bash 执行相同的安装说明并创build容器的图像。 是否有必要执行安装说明的东西,或者我可以开始安装?

AWS Elastic Beanstalk Docker PHP应用程序

我在一个t1.micro的AWS EB上有一个Docker容器,它是一个PHP应用程序,循环执行一些任务,hibernate几分钟,然后再次循环执行任务。 任务包括在FTP上移动一些数据,以及从Redis商店更新logging。 它总是build立和运行良好,但一天后,应用程序的健康状况变为“警告”,原因说明CPU运行在100%,我没有看到它处理的FTP上的任何活动,日志没有显示任何指示应用程序失败。 这只是将EC2实例升级到更高规格的情况吗? 或者,我运行的容器会在每次迭代后释放资源的方式有缺陷。 谢谢

在终止整个实例之后,Consul代理仍然被标记为临界状态

我正在docker运行的领事和使用gliderlabs/consul-agent在这里,我如何启动代理: (export IP44=$(wget -qO- 169.254.169.254/latest/meta-data/local-ipv4);consul agent -config-dir=/config -data-dir /opt/consul -advertise $IP44 -atlas=${ATLAS_REPO} -atlas-join -atlas-token=${ATLAS_TOKEN}) 在/config有一个agent.json文件,其中包含以下内容(来自该agent.json映像的缺省值): { "client_addr": "0.0.0.0", "data_dir": "/data", "leave_on_terminate": true, "dns_config": { "allow_stale": true, "max_stale": "1s" } } 问题是,当我终止我的实例,我仍然看到它在阿特拉斯控制台和它的标记为 代理不活或无法访问 如果我终止了很多实例,地图集中会有很多节点显示为不活动和失败的检查,因此整个infracture被标记为有严重问题。 是不是leave_on_terminate应该解决问题? 如何解决这个问题? UPD 在这里,我在日志中看到: 2016-03-02 01:15:51 UTC+3 2016/03/01 22:15:51 [INFO] Graceful shutdown over 0 2016-03-02 01:15:51 UTC+3 2016-03-02 01:15:51 UTC+3 2016/03/01 22:15:51 […]