如何通过Travis Ci Docker多容器部署到Heroku?

时间:2019-09-18 06:37:24

标签: php docker heroku travis-ci

我想通过Travis CI部署到Heroku。我正在使用docker-compose在本地构建和启动Web应用

这是我的docker-compose.yml

version: '3'

services:
  nginx:
    image: nginx:1.13
    ports:
      - 80:80
    volumes:
      - ./:/var/www/html
      - ./nginx/nginx.conf:/etc/nginx/nginx.conf
    depends_on:
      - php

  php:
    image: php:7.2-fpm
    volumes:
        - ./:/var/www/html

要在本地启动,我只需启动命令docker-compose up -d

这是我的travis CI配置

language: php
php:
  - '7.2'
deploy:
  provider: heroku
  api_key:
    secure: bkYGtlvRopIGCRPCKQxPtvwEnQsfTBaQmWIlaEWoKun/7fHbcHjcyjiwvBVemjcbwXaH8BSVz4HoMhif9P1svgX+If5v7SBuCghuMkrTtGJbhLM7bcdI2gOCG/6dvrPpI0GTEuZS91KqYoiBJ/81j9vmtZh2UCguO6MW98f69pUin4+ApSNwNA3TGde0Q5ZAIoarOfZA+RSuivraywsli1arNiEojhXTU7jqH8VvD8rJP/kRdisdhLHd+FXH+LsZoEoG6zVlLlKh0Oy3+V3N+919KQDtfCISBEesq+liAE5jn2NIyXt/9GN7oSDojEG1FeCSmNyZtmLffokzkGmJjuO53s57kzE7l6Y5qh1GVJ/6KEiyn67ZtK3vJHiFjZejKNMzbStKVjggOI8c5Zp48sTiLfzjgJcPtF+4M//b3SSkk9b9YTrEYnhNt9G7sSqJhgyDXyOHImephjilsLGRhpLvacjbctU16mU1yndYeoKml8KlmoB4fVQjqQwblZNLr1EUU7M9EEY+D3UZ1MWRFmSAaR6oMmvc73WeMzCEtlqtMwEuUKr3FnXUBPbC501RTgiYpHVIG058NEWyysnYxmxtnWATiVmmu1Cz4pQbIUDsmuXesMnUmpCcF4mIltHcnUC5PrNDBAKl3brEi1og9ORPtf9cYRK6/a2TgIW02gU=
services: docker
env:
  - DOCKER_COMPOSE_VERSION=1.4.2
before_install:
  - docker -v
  - docker-compose -v
  - docker-compose up -d

当我将提交推送到Git时,在Travis中构建传递正确的代码。 http://i.imgur.com/PSnvMgk.png

链接到网络应用https://github.com/Carsak/octo-weather

现在,在Travis构建通过之后如何将构建推送到Heroku?

Heroku文档https://devcenter.heroku.com/articles/container-registry-and-runtime#using-a-ci-cd-platform只是说“只需进行身份验证,输入电子邮件,用户名和密码”即可。 在哪里输入或写入此凭据?

Travis Docs说:https://docs.travis-ci.com/user/docker/#pushing-a-docker-image-to-a-registry “只需通过docker登录进行身份验证”

Heroku文档说https://devcenter.heroku.com/articles/local-development-with-docker-compose#pushing-your-containers-to-heroku “仅按前端!!!不要按后端,而要使用Heroku后端图像。”

0 个答案:

没有答案