Portainer實用教程


Portainer使用 Nginx 容器實現端口轉發

在 WordPress 部署完成后,需要在瀏覽器內輸入 IP:端口或域名:端口 的形式訪問網站,但我們一般訪問應用的時候都是希望不加端口就能訪問域名,所以這時就要用到 Nginx 的端口轉發功能。

一、創建 Nginx 容器

1.進入到 Portainer 頁面,選擇左邊的 Containers 選項,單擊上方的 Add container 按鈕轉到如圖 2 所示的頁面;

2.按照下圖創建 Nginx 容器;

3.回到容器列表,點擊剛剛創建的 Nginx 容器,可進入到容器詳情頁,往下可看到 volueme 信息,記錄下 /etc/nginx 目錄 對應的 volume 的值。

二、創建 FileBrowser 容器

1.進入到 Portainer 頁面,選擇左邊的 App Templates 選項,往下找到 File browser 容器模板,單擊選擇;

2.按照下圖創建 File browser 容器;

3.進入到容器列表,單擊剛剛創建的 File browser 容器,點擊 Duplicate/Edit 按鈕,進入到修改容器信息頁面;

4.按照下圖,將 File browser 的 volume 值修改為 和 Nginx 的 volume 值相同;

三、更改 Nginx 配置文件實現端口轉發

1.打開第二步中創建的 File Browser 網站(公網ip:端口),賬號密碼為 admin/admin,登錄到 File Browser;

2.進入 conf.d 目錄,雙擊 default.conf 文件,將原來的配置刪除,修改為如下圖所示內容:

upstream wordpress {
    server 159.138.6.145:32773;
}

server {
    listen 80;
    server_name  test.example.top;

    location / {
    proxy_pass http://wordpress;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Via "nginx";
    }
}

注意:請將 server_name 改為自己的域名,proxy_pass 改為自己網站容器的 IP:端口號

3.到容器列表重啟 Nginx 容器,現在就可以在瀏覽器地址欄輸入域名直接訪問自己的網站了。

修改完 Nginx 的配置文件后,File Browser 容器可選擇繼續保留使用或刪除。

Portainer綁定域名

域名綁定可在 上一步 配置Nginx實現端口轉發 將 server_name 改成自己的域名即可。

Portainer設置HTTPS

1.參考 安裝File Browser容器 新建 File Browser 容器;

注意設置 File Browser 的 volume 。

2.在瀏覽器打開 File Browser ,新建一個名為 cert 文件夾,將證書上傳至 cert;

3.修改 Nginx 的配置文件,注意將 IP 和域名改成自己的服務器 IP 和域名;

upstream portainer {
server 159.138.6.145:9000;
}

server {
    listen 80;
    listen 443 ssl;
    server_name  test.websoft9.top;

    ssl_certificate /etc/nginx/cert/cert-1540972394298_test.websoft9.top.crt;
    ssl_certificate_key /etc/nginx/cert/cert-1540972394298_test.websoft9.top.key;

    location / {
    proxy_pass http://portainer;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Via "nginx";
    }
}

如果證書路徑和圖中不同,請將圖中證書路徑改為自己的證書所在路徑,並將證書名改為自己的證書名。

4.在容器列表中重啟 Nginx 容器使配置生效,就可以在瀏覽器內使用 https://域名 訪問 Portainer 了。
5.如果想要達到訪問 http 自動跳轉到 https 的效果,請將配置改成如下所示:

upstream portainer {
    server 159.138.6.145:9000;
}

server {
    listen 80;
    listen 443 ssl;
    server_name  test.websoft9.top;

    ssl_certificate /etc/nginx/cert/cert-1540972394298_test.websoft9.top.crt;
    ssl_certificate_key /etc/nginx/cert/cert-1540972394298_test.websoft9.top.key;

    if ($scheme != "https") {
        return 301 https://$host$request_uri;
    }

    location / {
        proxy_pass http://portainer;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Via "nginx";
    }
}

Portainer連接到容器內部運行命令

在此以連接到 MySQL 容器為例進行說明:
1.返回到容器列表,點擊下圖中 MySQL 的 Quick actions 一欄下的 >_ 圖標;

2.在新打開的頁面,點擊 Connetc 按鈕,連接到容器;

3.接下來就可以在命令窗口中輸入mysql -uroot -ppassword;",其中 “password” 為您在自己設置的數據庫密碼,這樣就可以開始使用數據庫命令對 MySQL 進行管理了;

Portainer備份

到 Portainer 的容器列表里面查看 portainer 的 volume 對應的服務器目錄,在/var/lib/docker/volumes下可找到 volume 對應的目錄名,將其備份即可。

Portainer升級

只需運行 docker pull portainer就可以將 Portainer 升級到最新版本。

常用賬號與密碼說明

程序安裝、使用和維護中需要用到兩種賬戶:

MySQL賬號和密碼:

MySQL 的 root 賬戶默認密碼已優化為強隨機密碼,查看方式:

1.使用 SFTP遠程管理工具 連接到服務器;
2.找到 password.txt 文件 ( /root/password.txt ),打開即可查看 MySQL 數據庫用戶名和密碼;
3.若無 password.txt 文件,則為舊版鏡像,其 MySQL 默認用戶名和密碼為 :root/123456;
4.查看密碼后,可自行訪問 http://公網IP/phpmyadmin 管理數據庫相關信息。

默認的 “123456” 請務必修改為強密碼,類似於:f@N7eUUm25xAjP!$ ,這樣有助於提高數據庫的安全性,減少數據庫密碼被破解的風險。

Linux 服務器操作系統賬號和密碼:

賬號:root
密碼:是安裝鏡像的時候客戶自行設置的
登錄:使用 SFTP 或 SSH 工具

若不記服務器的密碼,請登錄雲服務器后台,修改服務器密碼,重啟后生效


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM