如何编写Docker Cloud的堆栈文件?

我的主要目标是通过docker stack将我的Laravel 5.1站点部署到我的docker cloud

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

    1. 泊坞窗,compose.yml
    2. app.dockerfile
    3. web.dockerfile

泊坞窗,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: 

app.dockerfile

 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.dockerfile

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

vhost.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的堆栈文件?

我会尝试Elastic Beanstalk。 请看这里 所以你需要将Docker-compose.yml重写到Dockerrun.aws.json。