docker部署PMA(LNMP架構)

上篇文章中已經部署好php環境,測試也已經OKphp

centos 7 docker 啓動了一個web服務 可是啓動時 報html

WARNING: IPv4 forwarding is disabled. Networking will not work.mysql

網上查詢了下 須要作以下配置linux

解決辦法:
# vi /etc/sysctl.conf
或者
# vi /usr/lib/sysctl.d/00-system.conf
添加以下代碼:
    net.ipv4.ip_forward=1
 
重啓network服務
# systemctl restart network
 
查看是否修改爲功
# sysctl net.ipv4.ip_forward
 
若是返回爲「net.ipv4.ip_forward = 1」則表示成功了

這篇文章來部署MySQL和PMAnginx

1.下載Mysql鏡像文件
使用如下命令從Docker鏡像庫中下載mysql鏡像
docker pull mysql
等下載成功後可使用如下命令查詢結果
docker images web

docker.io/mysql              latest              5d4d51c57ea8        10 days ago         373.6 MBsql

2.啓動Mysql容器
啓動mysql容器的方法很簡單,運行如下命令便可:
docker run --name=mysqlserver -itd -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root docker.io/mysql docker

命令參數說明
         --name 給容器起一個別名,可選,若是不指定,則Docker會自動生成不規則的字符串表示
         -i 指定容器能夠交互,有了此選項後,可使用docker attach等與容器進行交互
         -p 映射宿主機與容器中服務端口
         -e 設置容器運行所須要的環境變量MYSQL_ROOT_PASSWORD是mysql登陸用戶名密碼。數據庫

d836227eeee1        docker.io/mysql             "docker-entrypoint.sh"   19 minutes ago      Up 19 minutes       0.0.0.0:3306->3306/tcp   mysqlvim

docker logs -f mysql 

等待他啓動完成,便可從本地登陸。

3.訪問Mysql數據庫
因爲咱們在上面使用了-p參數映射了容器的3306端口到宿主機的3306端口,此時咱們能夠直接訪問宿主機的3306端口來訪問Docker中的mysql服務
mysql -h 127.0.0.1 -u root -p 

tcp6       0      0 :::3306                 :::*                    LISTEN      15653/docker-proxy- 

密碼爲root(經過啓動參數中的-e MYSQL_ROOT_PASSWORD=root 進行設定的)

    • 限定只能經過宿主機訪問mysql數據庫
            若是須要限定只能經過宿主機訪問mysql數據庫,可使用 –p 127.0.0.1:3306:3306 參數
    • 自定義mysql的配置及備份mysql數據
            若是須要修改mysql容器中的mysql配置,能夠在啓動容器參數中增長-v參數,映射本地的目錄或文件到mysql容器,覆蓋容器中的某個文件或文件夾
      生產環境中使用的命令:
      docker run -a STDIN -a STDOUT -a STDERR --privileged=true  --name=mysqlserver -v /data/mysql/my.cnf:/etc/mysql/my.cnf:ro -v /data/mysql/data/:/opt/mysql/data:rw -p 3306:3306 -e MYSQL_ROOT_PASSWORD=12345 mysql

4.部署PMA

 使用php和mysql開發網站的話,phpmyadmin是一個很是友好的mysql管理工具,而且免費開源,國內不少虛擬主機都自帶這樣的管理工具,配置很簡單,接下來在linux服務器上配置phpmyadmin來管理MySQL數據庫

  首先訪問phpmyadmin官網首頁,網址爲:http://www.phpmyadmin.net/,進入以後有download按鈕,先不要下載,由於下載下來是windows的zip包,點擊導航欄的Download連接,進入下載界面

 下載下來上傳到服務器上,而後執行下面命令解壓:

tar -xvzf phpMyAdmin-4.5.5.1-all-languages.tar.gz

  解壓完成以後,咱們放到一個可被web訪問到的目錄下,後續方便管理,好比/home/wwwroot

mv phpMyAdmin-4.5.5.1-all-languages /var/www/html(這裏是以前nginx映射到本地目錄的根路徑)

  而後執行 cd/var/www/html 而後將phpmyadmin目錄重命名,儘可能不讓別人猜出來入口,好比:

mv phpMyAdmin-4.5.5.1-all-languages pma

  而後執行 cd pma 進入安裝目錄,最新版本的phpmyadmin支持快速配置,不用執行安裝腳本,官方有快速安裝中文文檔:http://docs.phpmyadmin.net/zh_CN/latest/setup.html#quick-install

  這時候能夠看到目錄下有一個配置文件:config.sample.inc.php

  將這個文件拷貝一份:

cp config.sample.inc.php config.inc.php

  而後執行編輯:

vim config.inc.php

  找到$cfg['blowfish_secret']配置項,後面默認爲空,這裏咱們能夠隨便設置一個複雜的字符串,用來加密使用:

  

  而後$cfg['Servers'][$i]['auth_type']這一項默認爲cookie,表示每次都要登陸,咱們不用修改,這樣比較安全,而後$cfg['Servers'][$i]['host'] = '127.0.0.1';這裏建議設置成IP地址,則不管是本地仍是遠程只要mysql受權都沒有問題,默認localhost可能會出現#2002 - Permission denied — The server is not responding 這樣的錯誤,必定要注意,建議使用IP地址

  

  若是本地調試的話,那麼這裏要設置成config,而後在這裏填上用戶名和密碼,每次就自動進入了,調試比較方便

  整體就是設置上面的登陸認證類型和IP地址共兩項,設置完成保存並退出,而後經過web訪問咱們phpmyadmin的目錄地址便可,好比放到了www.xxxx.com下,那麼這個時候咱們須要訪問:http://www.xxxx.com/phpmyAdmina4689f,注意Linux服務器嚴格區分大小寫,這個時候看到登陸界面,phpmyadmin就配置好了

相關文章
相關標籤/搜索