Nginx代理Partainer的具體使用
主要目的用於通過nginx可以代理 Partainer服務,通過nginx進行統一轉發
1. 啟動nginx
啟動nginx,掛載整個nginx的配置路徑,具體的nginx配置可以百度
docker run -p 80:80 -name nginx --restart=always -v nginx/:/etc/nginx -d nginx
修改配置路徑下面的 conf.d/default.conf
upstream docker { // portainer 容器的名稱,如果不配置這個 nginx會 no resolver defined to resolve portainer 的問題 server portainer:9000; } server { //追加下面的路徑,一定要使用正則進行匹配,因為portainer訪問時的重定向路徑會是 /docker/api/xxx/xxx 的路徑,所以,如果出現重定向的地址也需要進行匹配 location ~ "^/docker(/?.*)" { proxy_pass http://docker$1$is_args$args; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
2. 啟動portainer
這裡隻需要開啟 9000端口,隻需要掛載宿主機中的docker文件到虛擬機中即可,掛載的數據卷可以百度
docker run -d -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer
3. 創建網絡
如果需要容器之間通過容器名稱就可以進行訪問,那麼需要讓容器在同一個網絡當中,下面就是創建一個網絡使用 bridge 具體網絡類型區別也可以百度詳細
docker network create -d bridge nginx_network #創建網絡
將啟動的容器連接到網絡中,然後重啟兩個容器
docker network connect nginx_network portainer docker network connect nginx_network nginx
可以進入 nginx容器中,通過 curl portainer:9000 查看能否請求到;訪問頁面
到此這篇關於Nginx代理Partainer的具體使用的文章就介紹到這瞭,更多相關Nginx代理Partainer內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Docker部署單頁應用的詳細操作
- Docker Portainer 可視化面板的使用
- Nginx源碼編譯安裝過程記錄
- Docker容器Consul部署概述
- CentOS系統rpm安裝Nginx和配置