Docker容器以代码0退出

时间:2018-07-26 14:33:01

标签: docker docker-compose dockerfile

我知道这个问题已经被问过多次了,我在这里已经看了很多,但是我仍然无法弄清楚。

我有一个非常简单的docker-compose.yml文件,该文件可以加载3个图像:nginx,php7和postgresql。

这3个链接在一起,所以我有一个LAPP堆栈(是的,我意识到我使用的是旧版本,一旦我掌握了基础知识,我会尽快升级)。

除了我的php代码是绑定安装的卷,它最终在容器中具有错误的文件所有权,因此它确实可以工作。

我尝试更改撰写文件,以不使用映像加载nginx,而是从Dockerfile构建文件(很抱歉,如果我的行话不正确,我仍在学习docker)。

当我将其更改为使用docker文件并执行docker-compose时,它确实启动了,但Web容器几乎立即死亡。

问题: 为什么在没有docker文件的情况下无法正常工作?如果需要使用docker文件,该怎么做才能使容器保持正常运行。

web:
 build: './docker/nginx'
 #image: nginx:latest   # works if I load nginx like this and comment out the above line
 stdin_open: true
 tty: true
 ports:
 - "8080:80"

 volumes:
  - ./code:/code
  - ./site.conf:/etc/nginx/conf.d/site.conf

 links:
 - php

php:
 #image: php:7-fpm
 build: './docker/php'

 links:
 - postgres

 volumes:
  - ./code:/code

postgres:
 image: postgres:latest

 environment:
  - POSTGRES_USER=un_rftags
  - POSTGRES_PASSWORD=pwd_RFT@gs01
  - POSTGRES_DB=db_rftags

 ports:
 - "9090:5432"

和我的nginx Dockerfile:

FROM nginx:latest

RUN mkdir -p /code && chown www-data /code -R

0 个答案:

没有答案