Tag:

Docker IISnetworking连接到外部networking

这里完全是Dockers的新手。 我有一个非常简单的.NET 45应用程序,它构build在ServiceStack框架上。 他们主要是API的Web服务。 Docker映像构build得很好,容器部署良好,运行正常,没有问题。 我正在使用Windows容器(而不是docker for windows)。 不过,我有一个特定的Web服务调用第三方API(传统),我们正在使用SOAP客户端来做到这一点。 但是,这个Web服务总是抛出EndpointNotFoundexception: “ https://externalapi.asmx上没有可以接受消息的端点监听,这通常是由地址或SOAP操作不正确引起的,请参阅InnerException(如果存在)以获取更多详细信息。 我已经阅读了Windows NAT问题。 我的直觉是自给式的容器是孤立的,因此没有外部互联网连接到外部世界。 有什么我需要configuration我的微软/ iis图像? 我的Docker文件: FROM microsoft/iis SHELL ["powershell"] RUN Install-WindowsFeature NET-Framework-45-ASPNET ; \ Install-WindowsFeature Web-Asp-Net45 COPY \ MyAwesomeWebsite RUN Remove-WebSite -Name 'Default Web Site' RUN New-Website -Name 'MyAwesomeWebsite' -Port 80 \ -PhysicalPath 'c:\MyAwesomeWebsite' -ApplicationPool '.NET v4.5' EXPOSE 80

在docker-compose中运行Django

在Docker容器中启动django项目时出现问题。 我的Dockerfile如下所示: FROM python:2.7 ADD . /code WORKDIR /code RUN pip install -r requirements.txt EXPOSE 8000 requirements.txt包含成功安装django的单行Django 。 我docker-compose.yml有以下内容: version: '2' services: web: build: ./web command: python manage.py runserver 0.0.0.0:8000 ports: – "8000:8000" volumes: – ./web:/code 要创build一个项目,我打电话给: docker-compose run web python django-admin.py startproject web . 其中崩溃与以下消息: python: can't open file 'django-admin.py': [Errno 2] No such […]

Docker的nginx代理主机

简短的介绍: 运行在docker上的Nginx,如何configurationnginx,以便将调用转发给主机。 详细描述: 我们有一个Web应用程序与后端的几个通信(让我们说rest1,rest2和rest3)。 我们负责rest1 。 让我们考虑,我开始rest1手动在我的电脑上运行2345端口。 我想nginx(在rest1运行)将所有调用redirect到rest1到我自己的运行实例(注意,实例在主机上运行,​​不是任何容器,也不在docker中)。 而rest2和rest3到一些其他docker节点或可能是一些其他的服务器(谁在乎)。 我正在寻找的是: docker-compose.ymlconfiguration(如果需要)。 nginxconfiguration。 提前致谢。

为什么MySQL Docker容器会抱怨在使用Docker 17.03的秘密时必须定义MYSQL_ROOT_PASSWORD env?

我正在尝试修改Docker的Wordpress秘密示例(下面的链接)在我的Docker Compose设置(适用于Drupal)中工作。 https://docs.docker.com/engine/swarm/secrets/#/advanced-example-use-secrets-with-a-wordpress-service 但是,当'mysql'容器启动时,将输出以下错误: “错误:数据库未初始化,未指定密码选项您需要指定MYSQL_ROOT_PASSWORD,MYSQL_ALLOW_EMPTY_PASSWORD和MYSQL_RANDOM_ROOT_PASSWORD之一” 我使用“docker secret create”命令创build了秘密: docker secret create mysql_root_pw tmp-file-holding-root-pw.txt docker secret create mysql_pw tmp-file-holding-pw.txt 在运行上述之后,现在在群集环境中存在秘密“ mysql_root_pw ”和“ mysql_pw ”。 通过执行validation: docker secret ls 以下是我的docker-compose.yml文件中的相关部分: version: '3.1' services: mysql: image: mysql/mysql-server:5.7.17 environment: – MYSQL_ROOT_PASSWORD_FILE="/run/secrets/mysql_root_pw" – MYSQL_PASSWORD_FILE="/run/secrets/mysql_pw" secrets: – mysql_pw – mysql_root_pw secrets: mysql_pw: external: true mysql_root_pw: external: true 当我做“ docker堆栈部署MYSTACK ”,当'mysql'容器试图启动时,我得到上面提到的错误。 看起来像“ […]

无法将Docker作曲者部署到AWS ECS

尽pipe遵循了大量的教程和指南,包括官方文档,但在试图将我的docker集装箱部署到ECS时,我总是碰壁。 以下是我所做的: ecs-cli configure –cluster my-cluster ecs-cli up –keypair XXX –capability-iam –size 1 –instance-type t2.micro ecs-cli compose –file docker-compose.staging.yml up 我docker-compose.staging.yml是 version: '2' services: web: mem_limit: 128m image: nginx:latest ports: – "80:80" – "443:443" volumes: – src:/var/www – vhost.staging.conf:/etc/nginx/conf.d/site.conf – certificates:/etc/nginx/ssl links: – app depends_on: – app app: mem_limit: 128m image: groberts12/php7.1-fpm-base volumes: – src:/var/www […]

从容器中访问docker远程API

我试图从一个容器内访问Docker远程API,因为我需要启动其他容器。 主机地址是172.19.0.1 ,所以我使用http://172.19.0.1:2375/images/json获取图像列表(从主机, http://localhost:2375/images/json按预期工作。 连接被拒绝,我猜是因为Docker(用于Windows)在127.0.0.1而不是在0.0.0.0上侦听。 我试着改变configuration(从UI和daemon.json )添加条目: "hosts": ["tcp://0.0.0.0:2375"] 但守护进程无法启动。 我怎样才能访问API?

docker中的Django shell模式

我正在学习如何使用官方教程开发Docker中的Django应用程序: https : //docs.docker.com/compose/django/ 我已经成功运行了教程,并且 docker-compose run web django-admin.py startproject composeexample . 创build图像docker-compose up运行应用程序 问题是: 我经常使用python manage.py shell以shell模式运行Django,但是我不知道如何用docker来实现。

无法访问在Docker上find的文件(无法打开stream:连接超时)

我有以下的Docker容器设置来为我的CMS提供动力,但是我在extensions卷中托pipe的PHP脚本中遇到了一些主要问题。 version: '2' services: bolt: image: rossriley/docker-bolt:3.2 network_mode: bridge environment: – BOLT_TITLE=Red Moon Workshop ports: – 80:80 volumes: – ./db-data:/var/www/html/app/database – ./files:/var/www/html/public/files – ./app/config:/var/www/html/app/config – ./public/theme/redmoon:/var/www/html/public/theme/redmoon – ./extensions:/var/www/html/extensions restart: always 在我的extensions卷内,我有一个PHP脚本,它从存储在同一主机中的文件中读取头文件。 脚本通常稍微复杂一些,但是我把它简化为一个失败点: $image = 'http://img.gdocker.com/php/1497665310_slide-splash-bg.png'; $headers = get_headers($image); return $headers; 该错误抱怨说由于超时而无法打开stream,但是如果我在浏览器中打开URL,它就可以正常工作。 An exception has been thrown during the rendering of a template ("Warning: get_headers(http://img.gdocker.com/php/1497665310_slide-splash-bg.png): failed […]

无法在Docker容器和java进程中parsing主机

我正在运行基于运行java进程的高山linux(GoCD服务器)的docker映像。 java进程本身试图运行一些代码来克隆本地git仓库,但是我得到了一个Couldn't resolve hostexception。 我试图从容器内使用'git clone'手动克隆git仓库,并没有问题。 另外,我可以通过运行ping my-service-url.com而没有问题,也可以从主机上ping my-service-url.com相同的结果,从而在ping my-service-url.com容器内ping域。 看来Java解决名称有一些困难,但我不知道如何解决它。 我尝试用RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf创build一个新映像。 我读了另一个问题,可以解决它,但没有运气。 整个Dockerfile如下所示: FROM gocd/gocd-server:v17.5.0 RUN echo 'hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4' >> /etc/nsswitch.conf ADD json-config-plugin-0.2.jar /godata/plugins/external/json-config-plugin-0.2.jar ENTRYPOINT ["/docker-entrypoint.sh"] 我在AWS ECS上运行,ipv4转发设置为1,networking模式为bridge 。 我正在用尽想法。

在docker容器内覆盖fullfs

下面的输出是什么意思,以及如何释放它? 我甚至不知道它是如何使用的。 无法find很多信息。 任何指针赞赏。 我在Docker容器中运行这个df -h. 命令。 这个docker容器是从Docker群集上的合成文件部署的。 我在Mac OS上和docker版本是17.06.1-ce bash-4.3$ df -h . Filesystem Size Used Available Use% Mounted on overlay 62.7G 59.5G 67.2M 100% / bash-4.3$