linux – Docker构成构建错误
发布时间:2020-12-13 22:58:40 所属栏目:Linux 来源:网络整理
导读:如果我使用命令docker-compose build,我将得到如下错误: ERROR: Validation failed in file './docker-compose.yml',reason(s):Service 'php' configuration key 'expose' '0' is invalid: should be ofthe format 'PORT[/PROTOCOL]' 我使用最新版本的docke
如果我使用命令docker-compose build,我将得到如下错误:
ERROR: Validation failed in file './docker-compose.yml',reason(s): Service 'php' configuration key 'expose' '0' is invalid: should be of the format 'PORT[/PROTOCOL]' 我使用最新版本的docker和docker-compose. 我的docker-compose.yml有下一个代码: application: build: code volumes: - ./symfony:/var/www/symfony - ./logs/symfony:/var/www/symfony/app/logs tty: true db: image: mysql ports: - 3306:3306 environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: symfony MYSQL_USER: root MYSQL_PASSWORD: root php: build: php-fpm expose: - 9000:9000 volumes_from: - application links: - db nginx: build: nginx ports: - 80:80 links: - php volumes_from: - application volumes: - ./logs/nginx/:/var/log/nginx elk: image: willdurand/elk ports: - 81:80 volumes: - ./elk/logstash:/etc/logstash - ./elk/logstash/patterns:/opt/logstash/patterns volumes_from: - application - php - nginx 我使用的是ubuntu 14.04 解决方法
您需要将端口定义放在短端口(2位数)的引号中.这是YAML的性质和docker-compose中使用的解析器的结果.
application: build: code volumes: - ./symfony:/var/www/symfony - ./logs/symfony:/var/www/symfony/app/logs tty: true db: image: mysql ports: - "3306:3306" environment: MYSQL_ROOT_PASSWORD: root MYSQL_DATABASE: symfony MYSQL_USER: root MYSQL_PASSWORD: root php: build: php-fpm expose: - "9000" volumes_from: - application links: - db nginx: build: nginx ports: - "80:80" links: - php volumes_from: - application volumes: - ./logs/nginx/:/var/log/nginx elk: image: willdurand/elk ports: - "81:80" volumes: - ./elk/logstash:/etc/logstash - ./elk/logstash/patterns:/opt/logstash/patterns volumes_from: - application - php - nginx 曝光语句也应仅包含一个数字,并且也应引用.在上面添加了所有必需的更改. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |