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

2019-02-19 10:26:15 +08:00
 daijinming

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

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

挂一个 mysql 容器,

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

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

其次要学会使用该服务器软件的虚拟主机配置。用 docker-compose.yaml 把主机配置挂载到本地磁盘 启动就可以啦
wummyu
2019-02-19 11:44:46 +08:00
看成了将 Docker 镜像运行成人网站
Tink
2019-02-19 12:03:43 +08:00
compose
yidinghe
2019-02-19 12:35:23 +08:00
看错标题的路过
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 操作。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/536412

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX