V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
daijinming
V2EX  ›  程序员

快速将 Docker 镜像运行成网站,都需要解决那些环节问题

  •  
  •   daijinming · 2019-02-19 10:26:15 +08:00 · 2277 次点击
    这是一个创建于 1893 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我这里有两个镜像,一个镜像是 dotnet 开发的应用,另外一个镜像是通用的 mysql 镜像,两个镜配合就能形成一个可以正常运行的网站。我想达到的目标是,能快速的启动多个网站,每个网站分配一个域名比如 app1.sample.com,app2.sample.com 等等,就是不知道想要达到这个效果需要做那些工作

    14 条回复    2019-02-19 13:37:35 +08:00
    momocraft
        1
    momocraft  
       2019-02-19 10:42:56 +08:00
    学会配置动态域名( DNS,web 服务器)
    学会用 docker 做以上的事
    daijinming
        2
    daijinming  
    OP
       2019-02-19 10:54:32 +08:00
    @momocraft 关于自动化部署 docker (两个镜像一起部署或更多)这块,不知道您有什么思路或建议
    mlboy
        3
    mlboy  
       2019-02-19 10:55:45 +08:00 via iPhone
    k8s
    484A4B
        4
    484A4B  
       2019-02-19 11:01:06 +08:00
    docker-compose
    docker-swarm
    k8s
    freakxx
        5
    freakxx  
       2019-02-19 11:08:24 +08:00
    把 app 需要修改的参数,如数据库之类的,做成一个 env_file,
    然后把 app 做成镜像,

    挂一个 mysql 容器,

    每次要新建的时候,配合 compose + env_file 快速搭建一个出来,通过 nginx 之类挂起来。
    whileFalse
        6
    whileFalse  
       2019-02-19 11:12:52 +08:00
    学会使用 nginx 和 docker-compose
    daijinming
        7
    daijinming  
    OP
       2019-02-19 11:26:50 +08:00
    @freakxx env_file 不是不太清楚,能请教下吗
    freakxx
        8
    freakxx  
       2019-02-19 11:33:36 +08:00
    就是你 app 那部分,数据库还有一些配置应该是独立的,你改成从环境变量读取,然后你在创建容器的时候再写进去,

    env_file 这部分,你去看下 docker compose 怎么写,大概就明白了。
    gamexg
        9
    gamexg  
       2019-02-19 11:36:41 +08:00
    看起来是单机就能撑住?
    那么 docker compose + jwilder/nginx-proxy 解决。
    kchum
        10
    kchum  
       2019-02-19 11:41:35 +08:00 via iPhone
    首先要确定 dotnet 镜像里是用什么 http 服务器 IIS Apache Nginx ?或者其他。

    其次要学会使用该服务器软件的虚拟主机配置。用 docker-compose.yaml 把主机配置挂载到本地磁盘 启动就可以啦
    wummyu
        11
    wummyu  
       2019-02-19 11:44:46 +08:00
    看成了将 Docker 镜像运行成人网站
    Tink
        12
    Tink  
       2019-02-19 12:03:43 +08:00 via iPhone
    compose
    yidinghe
        13
    yidinghe  
       2019-02-19 12:35:23 +08:00 via Android
    看错标题的路过
    liuzuo
        14
    liuzuo  
       2019-02-19 13:37:35 +08:00
    docker compose、swam、k8s 都可以解决部署问题。

    `每个网站分配一个域名比如 app1.sample.com,app2.sample.com 等等`
    这个需求如果需要全自动 k8s 可以使用 nginx ingress 解决,swam/compose 需要自己开发或手动编写 nginx config 操作。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4342 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 10:07 · PVG 18:07 · LAX 03:07 · JFK 06:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.