gpt4 book ai didi

docker - 从管道部署容器以供traefik 2管理的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-02 19:20:14 25 4
gpt4 key购买 nike

我很难找到一种更好的方法来将“conteininized”项目部署到我的服务器上。这是我的问题的描述:

我所拥有的:

  • AWS EC2服务器
  • Traefik V2使用https(通过Route53 dns服务器)管理和路由我的容器
  • Travis CI
  • Github
  • Docker中心

  • 这是我想做的事情:

    enter image description here

    我必须在Dockerfile中设置traefik标签,以便docker-compose文件使用此Dockerfile生成镜像(如果在docker-compose中设置了标签并将其推送到注册表中,则它不会出现)。
    我认为这不是一个很好的设计,可能有更好的解决方案。

    我想知道的是,如果有人对此有更好的解决方案!

    这是我的traefik的docker-compose(跟随教程的配置):
    version: '3'
    services:
    traefik:
    image: traefik:2.1
    container_name: traefik2
    restart: unless-stopped
    networks:
    - proxy
    ports:
    - 80:80
    - 443:443
    volumes:
    - /etc/localtime:/etc/localtime:ro
    - /var/run/docker.sock:/var/run/docker.sock:ro
    - /opt/traefik/traefik.yml:/traefik.yml
    - /opt/traefik/acme.json:/acme.json
    environment:
    # variable for dns server...
    labels:
    - "traefik.enable=true"
    - "traefik.http.routers.traefik.entrypoints=http"
    - "traefik.http.routers.traefik.rule=Host(`domain.info`)"
    - "traefik.http.middlewares.traefik-auth.basicauth.users=user:asdasdasdas"
    - "traefik.http.middlewares.traefik-https-redirect.redirectscheme.scheme=https"
    - "traefik.http.routers.traefik.middlewares=traefik-https-redirect"
    - "traefik.http.routers.traefik-secure.entrypoints=https"
    - "traefik.http.routers.traefik-secure.rule=Host(`domain.info`)"
    - "traefik.http.routers.traefik-secure.middlewares=traefik-auth"
    - "traefik.http.routers.traefik-secure.tls=true"
    - "traefik.http.routers.traefik-secure.tls.certresolver=mgcresolver"
    - "traefik.http.routers.traefik-secure.service=api@internal"

    networks:
    proxy:
    external: true


    这是一个我想使用此配置以及我正在使用的Dockerfile和docker-compose服务的react项目:

    https://github.com/wallysoncarvalho/portfolio-react

    最佳答案

    更好的解决方案是利用AWS ECS而不是直接在EC2实例上运行Docker容器。 ECS是一项由AWS管理的Docker服务,它可以在EC2或Fargate基础架构上运行。通常建议在可用时利用现有的云服务,而不是实现传统的本地替代方案。

    这是一个简单的构建/发布工作流的样子:

    enter image description here

    此外,我还建议您考虑将Docker镜像托管在AWS ECR中而不是DockerHub中,该服务与ECS集成良好。

    关于docker - 从管道部署容器以供traefik 2管理的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60517110/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com