如何从开发docker-compose.yml转到aws中部署的docker-compose.yml

时间:2018-03-28 21:05:04

标签: amazon-web-services docker docker-compose

我有以下docker-compose.yml:

version: '3'
services:
    server:
        build:
            context: ../../
            dockerfile: ./packages/website/Dockerfile
        command: yarn serve
        environment:
            PORT: 3000
            NODE_ENV: production
        restart: always
    nginx:
        build:
            context: ./
            dockerfile: ./nginx/Dockerfile
        command: nginx -c /etc/nginx/nginx.conf -g "daemon off;"
        depends_on:
            - server
        ports:
            - "80:80"
        restart: always

这在当地很有效,但现在我想把它部署到t2微型或其他一些付费服务,但我不知道如何去做。

我想我需要创建一个单独的docker-compose.yml文件来引用图像而不是物理Dockerfile

任何人都可以了解我将如何解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

如果将整个目录放到云上(并保留目录结构),它将会起作用。

如果您想以某种方式只想将docker-compose.yml文件上传到云端,则需要通过删除build字段并添加image: xxx字段来修改它。

现在问题变成“如何在docker-compose.yml文件中引用图像。”

实现这一目标的两种方法:

  1. 构建映像并将其放在某个容器注册表中,可以是DockerHub,也可以是私有的。并使用registry-url/image-name:image-tag引用它。如果您使用的是DockerHub,则可以忽略registry-url/部分。
  2. 构建映像并将scp构建到云端。并使用image-name:image-tag
  3. 参考它