Docker 多域名部署應用

  • 2019 年 12 月 4 日
  • 筆記

通常來說,每一個WEB應用和服務應該對應唯一的域名/二級域名,而 docker 通常將訪問地址設為本地域名下的某些端口,於是,使用Nginx 來監聽和轉發請求,就成為了一個十分可行的選項。

安裝Nginx

這裡使用的是Ubuntu 服務器,安裝非常簡單,更新apt 源,使用:

$ apt-get install nginx

即可完成安裝~!

查看Docker配置

使用:

$ docker ps

查看端口配置。

配置Nginx

nginx 的配置文件默認讀取/etc/nginx/nginx.conf文件。

區塊指令由{}包含,區塊指令又可以包含多個簡單指令和區塊指令:

http {      server {         # ……       # 引入docker vhost的轉發       include /data/nginx/conf/vhost/*.conf;      }  }

server 區塊包含再 http區塊中

多域名配置

這裡使用外部 conf 調用來進行多域名配置。

創建一個 vhost 目錄存放各域名配置

$ mkdir vhost

寫入信息

創建一個 jupyter.conf 寫入server 信息如下:

server  {      listen 80;      server_name jupyter.leepush.com;      location / {          #....          proxy_pass http://127.0.0.1:8888;      }      ##### other directive  }

將 8888 端口映射到指定域名的80下。

重載命令生效:

重載配置並重啟nginx:

$ /etc/init.d/nginx restart  $ sudo nginx -s reload

若無效,重新執行上述指令,並 ctrl + F5 刷下緩存後訪問!