我一直在为当地的Docker开发环境工作大概一周。 我们宁愿使用Ubuntu Linux,CentOS和RedHat上的Amazon Linux。 这是我迄今为止所采取的步骤: 1)创build一个虚拟机工作 docker-machine create –driver virtualbox default 2)将我的terminal连接到正在运行的虚拟机: eval "$(docker-machine env default)" 3)拉AMI Linux: docker pull amazonlinux 4)构build一个具有PHP 7.1和Apache 2.4的Dockerfile图像容器 / AppFolder /搬运工/图像/ apachephp / AMI / Dockerfile FROM amazonlinux MAINTAINER Cameron Macfarlane <cammac1984@gmail.com> RUN yum update -y RUN yum install httpd24 vim php71 php71-pdo php71-mbstring php71-pecl-imagick php71-opcache -y EXPOSE 80 […]
我已经使用Amazon ECS在应用程序负载平衡器后面部署了一个redis容器。 看起来健康检查失败,虽然容器正在运行,并准备接受连接。 这似乎是失败的,因为健康检查是HTTP,并且redis当然不是一个http服务器。 # Possible SECURITY ATTACK detected. It looks like somebody is sending POST or Host: commands to Redis. This is likely due to an attacker attempting to use Cross Protocol Scripting to compromise your Redis instance. Connection aborted. 很公平。 经典的负载平衡器我认为会很好,因为我可以明确地ping通TCP。 用ALB使用redis是可行的吗?
我在Docker中使用了Docker与ECS,目前无法创build大图片,在拉动步骤失败。 错误是“设备上没有剩余空间”,即使磁盘仍然有更多的空间。 请看附件,这个图片需要拉到1.5GB左右。 我猜在ECSconfiguration中有一些错误或有限的,因为如果我在另一个实例中运行这个构build容器,它可以构build一个大的图像。 请告诉我如何debugging和解决这个问题。 谢谢。
必须将我们的AWS服务器从开放的Internet访问移到防火墙后面。 我从头开始设置新的服务器。 我有一个脚本来构build并启动一个docker镜像。 它在原始服务器上效果很好。 但是,防火墙服务器,没有运气。 我试过“npm set strict-ssl false”和“npm install npm -g –ca = null”+“npm config set ca =”“” 我读过尽可能多的文档,我可以find。 没有任何工作,我现在卡住了…这是从防火墙服务器的输出。 $ docker build . -t lab-server Sending build context to Docker daemon 23.68 MB Step 1 : FROM node:latest —> 14989a19b2c6 Step 2 : RUN apt-get update -y —> Using cache —> bf64a1065712 Step […]
我正在尝试将不同文件的内容读入Docker容器。 文件存在于EC2主机上,我想读取文件的内容作为任务定义文件环境参数的一部分。 environment": [ { "name": "ENVIRONMENT", "value": "{\"key\":\"value\"}" } ] 这个键值JSON是在一个文件中,我想读它作为环境variables,(不像目前我正在阅读它作为stringJSON)。 我怎样才能做到这一点?
我正在尝试在AWS上安装docker-ce 17.09在ubuntu 16.04上的实例。 该实例位于VPC公司的后面,分配的安全组允许所有TCP和UDP通信。 但是,整个networking崩溃了,当Docker安装到达时,我的SSH连接丢失了: Setting up docker-ce (17.09.0~ce-0~ubuntu) … Connection reset by … port 22 这是由于VPC设置? 或者其他原因? 更新 由于我无法更改现有的VPC。 我决定不使用Ubuntu实例,而是使用亚马逊AMI。
随着Docker团队经常使用新function,Amazon Linux AMI repo(amzn-updates)Docker软件包并不总是最新的,因此一些最新function并不是即时可用的(例如,使用sudo yum install -y docker安装Docker) 。 如何在Amazon Linux AMI上安装特定版本的Docker? 有没有优点/缺点如果安装它与亚马逊包pipe理器vs手动? 提前致谢。
eb local run和eb deploy之间有什么区别? 我可以运行eb local run ,我的网站工作得很好。 但是当我运行eb deploy失败。 这是一个docker实例。 我想知道我能做些什么来开始解决这个问题。
我正在尝试创build一个群集,可以在使用p2实例创build的AWS GPU群集内部启动带有Tensorflow和Jupyter笔记本的Docker。 我也希望每个用户都有自己的文件夹。 理想情况下,每个实例最多可以运行两个docker,如果需要一个新的docker,我们将启动一个新的实例。 我试图使用AWS ECS来做到这一点,我设法使用Jupyter在TF docker镜像和GPU的固定端口上启动任务。 我也想为每个用户安装一个不同的文件夹,我认为可以在任务定义中使用一个variablesmount / folder / $(userid)/,但这是不可能的。 我也试图自动启动一个新的实例添加到集群,如果实例已经有两个docker运行。 现在我找不到解决这两个问题的办法,我看到Kubernetes可以取代ECS,你认为Kubernetes会是我想要做的一个很好的解决scheme吗? 如果不是我能做些什么来使它与ECS一起工作? 随意给任何build议 谢谢! 这是我目前的dockerconfiguration:我现在没有实现用户文件夹: "containerDefinitions": [ { "volumesFrom": [], "memory": 2048, "extraHosts": null, "linuxParameters": null, "dnsServers": null, "disableNetworking": null, "dnsSearchDomains": null, "portMappings": [ { "hostPort": 0, "containerPort": 8888, "protocol": "tcp" } ], "hostname": null, "essential": true, "entryPoint": [ "jupyter", "notebook", "–no-browser", […]
这篇文章解决了我发现的一个问题 – 所以我希望别人会觉得它有用。 使用AWS Ubuntu Zesty – 17.04 – 使用Ansible和Terraform安装了Docker的图像很直接,但是到了Ubuntu Artful – 17.10,无论我安装了哪个版本的Docker,容器启动都无法parsingDNS。 经过大量的testing后,在我看来,主机是通过错误的DNS服务器进入容器内的resolv.conf – 所以它永远不会工作。 解决scheme: 对于systemd和docker,更改守护程序设置的首选方法是在/ etc / docker中创build一个名为daemon.json的新文件。 在该文件中添加以下内容以使其使用AWS VPC默认DNSparsing器 – 10.0.0.2 – 就像这样 { "dns": ["10.0.0.2"] } 重新启动docker守护进程,容器现在可以parsingDNS。 可能有其他方法可以解决这个问题,但是这个工作是完美的,并且使用了docker社区首选的方法。 我希望这能帮助那些可能遇到这个问题的人。 其他设置可以在这个文件中find。 Dockerd设置文档