Questions tagged «docker»

Docker是一个开源项目,可自动在软件容器内部署应用程序。

4
将Amazon Elastic Container Registry与Jenkins集成
我正在尝试将Amazon的新Elastic Container Registry(ECR)与我的Jenkins构建服务集成在一起。我正在使用Cloudbees Docker Build&Publish插件来构建容器映像并将其发布到注册表。 要使用ECR而不是我的私有注册表,我运行了AWS CLI命令aws --region us-east-1 ecr get-login,该docker login命令会生成一个要运行的命令-但我只是复制了密码,并从该密码创建了类型为“带有密码的用户名”的Jenkins凭证(用户名是始终为“ AWS”)。 而且效果很好!问题在于,AWS CLI生成的ECR密码仅有效12个小时。因此,现在,我必须每天两次手动重新生成密码,并手动更新Jenkins凭证屏幕,否则我的构建会开始失败。 有没有一种方法可以生成永久性的ECR登录令牌,或者以某种方式自动生成令牌?

4
当主机端口!=容器端口时,Nginx在Docker计算机上重写
我正在尝试运行多个都在端口80上运行nginx侦听的docker容器,但将不同的主机端口映射到容器端口80。 在大多数情况下,这是可行的,但nginx由于缺少尾部斜杠而进行重定向时除外。 server { listen 80; root /var/www; index index.html; location /docs {} } 给定上述nginx配置和一个运行它的docker容器,并将其主机端口8080映射到容器端口80,我可以通过curl ok获得localhost:8080 / docs /: > GET /docs/ HTTP/1.1 > User-Agent: curl/7.35.0 > Host: localhost:8080 > Accept: */* > < HTTP/1.1 200 OK * Server nginx/1.9.5 is not blacklisted < Server: nginx/1.9.5 < Date: Sat, 28 …
10 nginx  docker 

2
带有Red Hat Network Subscription的yum在rhel Docker映像中如何工作?
红帽企业Linux 7包括对运行Docker容器的官方支持,而红帽提供了一组官方的RHEL Docker映像。这些映像的一个有趣特征是,可以通过主机的Red Hat Network订阅安装软件包,而无需在容器内执行任何配置。 引用https://access.redhat.com/articles/881893#createimage: “对于当前的Red Hat Docker版本,您从Red Hat提取的默认RHEL 7 Docker映像将能够利用主机系统上可用的RHEL 7权利。因此,只要您的Docker主机已正确订阅并且存储库为如果启用了您需要在容器中获取所需软件的功能(并可以从Docker主机访问Internet),则应该能够从RHEL 7软件存储库安装软件包。” 我担心的是,实现这一目标的机制相当模糊。例如,当使用rhel7.1映像启动新容器时,yum install foo甚至无需配置http代理环境变量就可以运行。在不了解这种机制的情况下,系统管理员可能会受到主机系统,Docker守护程序和正在运行的容器之间未知交互的支配。这也表明主机和容器之间的正常隔离在某种程度上受到了损害(尽管是良性的)。 要指出一点:如何实现这种订阅支持,它是否取决于Red Hat通过Subscription Network提供的Docker守护程序的自定义构建?
10 redhat  yum  docker  rhel7 

3
使用Webhooks自动更新Docker容器
我创建了一个Github存储库和一个Docker存储库。两者可以很好地协同工作:当我将新版本的Dockerfile推送到Github时,会在Docker存储库中自动构建一个新映像。 现在,我希望在(重建)基础映像时自动更新正在运行的容器。 如何使用Docker repos webhooks实现它?

4
使用特权Docker容器进行内核调整
我正在建立一个容器来调整负载均衡器的内核设置。我宁愿使用单个特权容器将这些更改部署到映像中的主机。例如: docker run --rm --privileged ubuntu:latest sysctl -w net.core.somaxconn=65535 在测试中,更改仅对那个容器生效。我的印象是,使用具有完全特权的容器时,对/ proc的更改实际上会更改底层的OS。 $docker run --rm --privileged ubuntu:latest \ sysctl -w net.core.somaxconn=65535 net.core.somaxconn = 65535 $ docker run --rm --privileged ubuntu:latest \ /bin/bash -c "sysctl -a | grep somaxconn" net.core.somaxconn = 128 这是特权容器应该如何工作的吗? 我只是在做傻事吗? 进行持久更改的最佳方法是什么? 版本信息: Client version: 1.4.1 Client API version: …
10 linux  docker  su  sysctl 

1
操作系统docker容器:与VM有何区别?
在Docker容器中使用OS有什么意义? 在 Docker 存储库中,您可以找到一个Ubuntu Docker 映像:https : //registry.hub.docker.com/_/ubuntu/我认为Docker更像是“应用”级别。 Ubuntu Docker容器和Ubuntu虚拟机之间有什么区别?如果您在Docker容器中有一个完整的操作系统,那么使用Docker并不是没有意义的吗? 谢谢
10 docker 

4
您如何命名码头集装箱?
在Ubuntu 12.04.4上,我安装了Docker 1.1.2。我尝试使用以下方法尝试设置图像ID: sudo docker run -i -t --name=container1 ubuntu date 但是,我的尝试似乎失败了。每次我做一次docker ps -a图像ID都是随机的。如果添加,我可以设置主机名,-h container1但我想设置图像ID。我在这里想念什么?谢谢!

3
如何在CentOS 7上(在Docker上)添加语言支持?
我正在尝试将语言环境设置为日语,但是docker上的CentOS映像不包含语言支持。 bash-4.2# yum groupinstall -y "Japanese Support" Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * base: mirrors.btte.net * extras: centos.mirror.secureax.com * updates: centos.mirror.secureax.com Warning: group Japanese Support does not exist. Maybe run: yum groups mark install (see man yum) No packages in any requested group available to install …
10 centos  yum  docker 

2
无法在VPS上更新Linux内核
我最近开始从OVH使用VPS:http ://www.ovh.co.uk/vps/vps-classic.xml 这很可能是这一提供商所特有的问题。 我的目标是在其上安装和运行Docker,为此,我需要内核支持模块。默认情况下,OVH的VPS计算机使用的自定义内核不会,并且Docker崩溃。我几次尝试重新安装计算机,并使用Debian(6、7)和Ubuntu(12.04、13.10)的各种版本的VPS,每次uname -r向我展示 uname -r 2.6.32-042stab084.14 ... / boot目录为空,没有安装grub或lilo,没有安装linux-image软件包,尽管它们可用。 从存储库,grub安装Linux内核,更新grub(这是我用Google搜索出来的广泛建议)和重新引导计算机的效果不大。Grub找到一个系统映像,重新安装了一个,/ boot被填充,但是系统仍然运行上述内核。这个和以上症状使我感到非常困惑:这台机器首先如何启动?网络启动也许?如何检查,如何更改此行为? 根据netboot的想法,我再次检查了google,这告诉我OVH Web管理器版本3中有一个选项可以更改网络启动设置。我使用Manager v.6来修改我的VPS(他们说功能已移到那里),我在那里找不到这种选择,以前的Manager版本甚至都看不到我的VPS。 这是我到目前为止所走的路。我想在此VPS上运行标准存储库内核,也欢迎就此设置的工作原理以及为何如此麻烦提出任何解释,因为现在我感到相当困惑:)

2
在VPC中运行docker并从另一台VPC计算机访问容器
我在AWS VPC中运行docker时遇到问题。 这是我的设置:我有两台计算机在VPC中运行: 10.0.100.150 10.0.100.151 它们都分配有弹性IP,并且都在启用Internet的同一子网中运行。 假设我正在运行一个Web服务器,该服务器在10.0.100.150机器上的容器中提供静态文件: 知识产权:172.17.0.2 端口8111在计算机上的8111端口上转发。 我正在尝试从本地计算机访问静态文件(或者另一台非VPC计算机也尝试了未在VPC中运行的EC2实例),并且它可以完美地工作。 如果我尝试从另一台计算机(10.0.100.151)访问文件,则会挂起。我正在使用wget拉文件。 试图用tcpdump和ngrep调试它,我已经看到请求是到达容器的。如果我在主机上ngrep,则看到请求进入,但没有响应返回。如果我在容器上ngrep,我会看到请求进入并返回响应。 我尝试了多个iptables设置(启用了路由后功能,以及手动转发端口等),但没有成功。 以任何方式提供帮助-甚至调试指导也将不胜感激。 谢谢!

2
从Docker容器连接到Docker主机
我有一个设置,可以在docker容器中运行网站的所有部分。我在端口80和443上侦听的Nginx在容器中运行。 363292a98545 scivm/nginx-django-scivmcom:latest /usr/bin/supervisord 12 days ago Ghost 0.0.0.0:40001->22/tcp, 88.198.57.112:443->443/tcp, 88.198.57.112:80->80/tcp lonely_feynmann 我想在另一个容器中设置服务的代理。此容器绑定到主机上的端口3000: b38c8ef72d0a mazzolino/strider-dind:latest wrapdocker /usr/bin/ 41 minutes ago Up 41 minutes 0.0.0.0:3000->3000/tcp, 22/tcp, 27017/tcp distracted_einstein 我在docker主机上的iptables如下所示: root@Ubuntu-1204-precise-64-minimal /var/run # iptables -L Chain INPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere ACCEPT all -- …


3
使用docker + nginx + php-fpm服务静态内容
我正在尝试使用docker配置php webapp。这个想法是php-fpm在一个独立的容器中运行应用程序,并让另一个容器运行nginx。此设置的想法是使用相同的nginx容器将请求代理到已经在同一台机器上运行的其他Web应用程序。问题是我无法nginx正确处理静态文件(js,css等),因为对那些文件的请求一直在进行fpm。 这是文件系统的样子: / ├── Makefile ├── config │ └── webapp.config └── webapp └── web ├── index.php └── static.js 我正在使用Makefile看起来像这样的整个东西(对此不感兴趣docker-compose): PWD:=$(shell pwd) CONFIG:='/config' WEBAPP:='/webapp' run: | run-network run-webapp run-nginx run-network: docker network create internal-net run-webapp: docker run --rm \ --name=webapp \ --net=internal-net \ --volume=$(PWD)$(WEBAPP):/var/www/webapp:ro \ -p 9000:9000 \ php:5.6.22-fpm-alpine run-nginx: …

2
curl(56)接收失败:连接被同级重置-击中Docker容器时[关闭]
已关闭。这个问题需要细节或说明。它当前不接受答案。 想改善这个问题吗?添加详细信息并通过编辑此帖子来澄清问题。 上个月关闭。 从一个AWS ec2实例(运行docker),我正在尝试使用curlDocker容器托管的Web服务。 鉴于: [ec2-user]$ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES b56fa0d76d5c $REGISTRY/$WORK/metrics:v0.1.0 "/bin/sh -c 'sh /root" 3 minutes ago Up 3 minutes 0.0.0.0:80->80/tcp, 0.0.0.0:9000->9000/tcp insane_leakey 我可以从容器中访问Web服务: [ec2-user]$ docker exec -it b56fa0d76d5c bash root@b56fa0d76d5c:/# curl 'http://localhost/health' Request is missing required query parameter 'apiName' 但是,我无法从主持人那里找到它: …

3
在Ubuntu 15.04上使用systemd启动docker-compose
我有一个想通过systemd控制的docker-compose项目。在暴发户中,我将使用如下所示的脚本: description "Start/Stop server" author "Jim Cortez" start on filesystem and started docker stop on runlevel [!2345] respawn limit 3 240 pre-start script # wait (if necessary) for our docker context to be accessible while [ ! -f /projects/my_server/docker-compose.yml ] do sleep 1 done /usr/local/bin/docker-compose -f /projects/my_server/docker-compose.yml up -d end …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.