3

我的主要目标是将我的Laravel 5.1站点部署到我docker cloud的 viadocker stack中。

  • 我已经将我的 DockerCloud 帐户与我的 AWS 帐户连接起来。
  • 我已经有了 :

    1. 码头工人-compose.yml
    2. 应用程序.docker文件
    3. web.docker文件

码头工人-compose.yml

version: '2'
services:
# The Application
app:
  build:
    context: ./
    dockerfile: app.dockerfile
  working_dir: /var/www
  volumes:
    - ./:/var/www
  environment:
    - "DB_PORT=3306"
    - "DB_HOST=45.55.88.57"

# The Web Server
web:
  build:
    context: ./
    dockerfile: web.dockerfile
  working_dir: /var/www
  volumes_from:
    - app
  ports:
    - 85:80
volumes:
dbdata:

应用程序.docker文件

FROM php:7.0.4-fpm
RUN apt-get update && apt-get install -y libmcrypt-dev \
      mysql-client libmagickwand-dev --no-install-recommends \
      && pecl install imagick \
      && docker-php-ext-enable imagick \
      && docker-php-ext-install mcrypt pdo_mysql

web.docker文件

  FROM nginx:1.10
  ADD vhost.conf /etc/nginx/conf.d/default.conf

虚拟主机配置文件

 server {
      listen 80;
      index index.php index.html;
      root /var/www/public;

      location / {
          try_files $uri /index.php?$args;
      }

      location ~ \.php$ {
          fastcgi_split_path_info ^(.+\.php)(/.+)$;
          fastcgi_pass app:9000;
          fastcgi_index index.php;
          include fastcgi_params;
          fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
          fastcgi_param PATH_INFO $fastcgi_path_info;
      }
  }

结果

在此处输入图像描述

http://localhost:85

它在本地工作得很好

在此处输入图像描述

目标

在此处输入图像描述

有了我得到的所有 docker 文件,我如何为 Docker Cloud 编写堆栈文件?

4

1 回答 1

0

我会尝试弹性豆茎。请看这里。所以你需要将 docker-compose.yml 返工为 Dockerrun.aws.json。

于 2017-11-19T16:03:24.523 回答