欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

在?Docker?容器中運行?PHPMyAdmin的詳細步驟

 更新時間:2022年01月25日 10:21:50   作者:mikes?zhang  
Docker是一個開源的應用容器引擎,它能夠實現應用部署的自動化。此外,容器是完全使用沙箱機制,容器之間的環(huán)境相互獨立,不會相互干擾,接下來通過本文給大家介紹在?Docker?容器中運行?PHPMyAdmin的詳細步驟,感興趣的朋友一起看看吧

在這里插入圖片描述

PHPMyAdmin是 MySQL 和 MariaDB 數據庫的流行管理界面。它允許您使用 Web 瀏覽器與您的模式、表和數據進行交互。phpMyAdmin能夠為你的MySQL提供直觀、方便的Web管理界面,非常好用。

該項目有一個官方的 Docker 鏡像,它簡化了在容器化環(huán)境中的部署。以下是如何使用圖像快速運行新的 PHPMyAdmin 實例。

基本用法

最簡單的安裝讓 PHPMyAdmin 容器連接到任何可訪問的數據庫服務器:

docker run -d --name phpmyadmin -e PMA_ARBITRARY=1 -p 8080:80 phpmyadmin

此命令在端口 8080 上啟動 PHPMyAdmin。localhost:8080在瀏覽器中訪問以查看登錄屏幕。環(huán)境變量的存在會PMA_ARBITRARY導致顯示服務器連接表單。指定要登錄的 MySQL 或 MariaDB 數據庫的主機和用戶憑據。

在這里插入圖片描述

當您使用此方法時,您通常會看到一個 PHPMyAdmin 警告“某些擴展功能已被停用”。當您連接的服務器沒有名為phpmyadmin. PHPMyAdmin 使用這個模式來存儲它自己的配置數據。

在這里插入圖片描述

按照警告鏈接“創(chuàng)建數據庫”完成安裝。您的用戶帳戶將需要在服務器上創(chuàng)建新數據庫的權限。

預設服務器

作為允許任意訪問的替代方法,您可以使用預配置的服務器連接啟動 PHPMyAdmin 容器。提供PMA_HOSTandPMA_PORT環(huán)境變量而不是PMA_ARBITRARY:

docker run -d --name phpmyadmin -e PMA_HOST=mysql.example.com -e PMA_PORT=33060 -p 8080:80 phpmyadmin

PMA_PORT是可選的。當沒有提供值時,它將使用 MySQL 默認值 3306。

使用這些變量啟動容器將限制 PHPMyAdmin 使用mysql.example.com服務器。系統(tǒng)會在登錄屏幕上提示您輸入用戶名和密碼,但您不需要提供主機名。

PHPMyAdmin 也可以配置為呈現多個服務器選項。提供PMA_HOSTS并PMA_PORTS以逗號分隔的連接列表來啟用此功能。

使用 MySQL Docker 容器

另一個常見用例是連接到在單獨的 Docker 容器中運行的 MySQL 或 MariaDB 服務器。您可以在端口上公開數據庫服務器,也可以將兩個容器連接到共享的 Docker 網絡。在任何一種情況下,使用PMA_HOST和PMA_PORT環(huán)境變量將指示 PHPMyAdmin 如何連接到服務器。

還支持舊版 Docker 鏈接:

docker run -d --name phpmyadmin --link my_mysql_container:db -p 8080:80 phpmyadmin

此命令允許您將 PHPMyAdmin 連接到my_mysql_container容器,而無需手動設置網絡鏈接。這個功能在 Docker 中被棄用了,所以切換到網絡命令是更可取的:

docker network create phpmyadmin
docker network connect phpmyadmin mysql_container_name --ip 172.17.0.1
docker network connect phpmyadmin phpmyadmin_container_name

作為替代方案,您可以使用 Docker 的–network標志通過預配置的網絡連接啟動 PHPMyAdmin :

docker run -d --name phpmyadmin --network phpmyadmin -p 8080:80 phpmyadmin

現在 PHPMyAdmin 將能夠通過共享網絡訪問 MySQL 容器。將PMA_HOST環(huán)境變量設置為172.17.0.1啟動容器時。

使用 Docker Compose 簡化部署

編寫Docker Compose 文件可以簡化重要的部署。您可以使用該docker-compose up -d命令以可重復的方式啟動一個新的 PHPMyAdmin 容器。

這是docker-compose.yml任意連接模式下的 PHPMyAdmin:

version: "3"

services:
  phpmyadmin:
    image: phpmyadmin:latest
    ports:
        - 8080:80
    environment:
        - PMA_ARBITRARY=1
    restart: unless-stopped

Docker Compose 還可以幫助您使用全新的 MySQL 數據庫安裝和 PHPMyAdmin 容器創(chuàng)建堆棧:

version: "3"

service:
  mysql:
    image: mysql:latest
    expose:
      - 3306
    environment:
      - MYSQL_ROOT_PASSWORD
    volumes:
      - mysql:/var/lib/mysql
    restart: unless-stopped
  phpmyadmin:
    image: phpmyadmin:latest
    ports:
      - 8080:80
    environment:
      - PMA_HOST: mysql
      - PMA_PASSWORD: ${MYSQL_ROOT_PASSWORD}
    restart: unless-stopped

volumes:
  - mysql

運行docker-compose up -d以使用完全聯網的 PHPMyAdmin 容器啟動 MySQL。PHPMyAdmin 的PMA_HOST變量設置為mysql,引用 MySQL 服務名稱。Docker Compose 自動設置主機名以匹配服務名稱,允許 PHPMyAdmin 使用共享網絡連接到 MySQL。

配置安裝

PHPMyAdmin Docker 映像支持用戶提供的配置文件,您可以通過Docker 卷注入該配置文件。路徑是/etc/phpmyadmin/config.user.inc.php:

docker run -d \
    --name phpmyadmin \
    -e PMA_ARBITRARY=1 \
    -p 8080:80 \
    -v my-config-file.php:/etc/phpmyadmin/config.user.inc.php
    phpmyadmin

您可以添加PHPMyAdmin 支持的任何配置變量。

該圖像還支持許多常見設置的環(huán)境變量。這些措施包括MEMORY_LIMIT,UPLOAD_LIMIT并且MAX_EXECUTION_TIME,每個對應于可能需要如果你使用長時間運行或復雜的查詢進行調整,PHP INI值。

敏感值,例如PMA_HOST,PMA_PASSWORD,和MYSQL_ROOT_PASSWORD,可以使用注射多克爾秘密而非純的環(huán)境變量。附加_FILE到變量的名稱,然后將值設置為容器內提供實際值的路徑。

docker run -d --name phpmyadmin -e PMA_HOST_FILE=/run/secrets/pma_host -p 8080:80 phpmyadmin

概括

PHPMyAdmin 是最流行和最著名的 MySQL 管理實用程序之一。裸機安裝為您的系統(tǒng)添加了多個依賴項,將 Apache 和 PHP 與應用程序的源代碼捆綁在一起。

在 Docker 中安裝 PHPMyAdmin 為您提供了一個隔離環(huán)境,可以使用少數 Docker CLI 命令創(chuàng)建、替換和刪除該環(huán)境。官方鏡像可以連接到可以從您的主機訪問的任何 MySQL 服務器,包括在其他 Docker 容器中運行的數據庫。

可以在官方文檔中找到有關運行和使用 PHPMyAdmin 的更詳細指南。查看安全指南尤其重要,這樣您就不會無意中讓您的數據庫面臨外部攻擊的風險。在暴露給外界的容器中部署 PHPMyAdmin 時,您還應該考慮Docker 安全最佳實踐。

到此這篇關于在 Docker 容器中運行 PHPMyAdmin的文章就介紹到這了,更多相關Docker 運行 PHPMyAdmin內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 你可能不知道的docker命令奇淫怪巧

    你可能不知道的docker命令奇淫怪巧

    這篇文章主要介紹了你可能不知道的docker命令的奇淫怪巧,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-01-01
  • 詳解利用Dockerfile構建mysql鏡像并實現數據的初始化及權限設置

    詳解利用Dockerfile構建mysql鏡像并實現數據的初始化及權限設置

    本篇文章主要介紹了詳解利用Dockerfile構建mysql鏡像并實現數據的初始化及權限設置 ,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • Docker中如何刪除image(鏡像)的方法

    Docker中如何刪除image(鏡像)的方法

    這篇文章主要介紹了Docker中如何刪除image(鏡像)的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • 手把手帶大家通過Docker部署前后端分離項目(親測可用)

    手把手帶大家通過Docker部署前后端分離項目(親測可用)

    近年來前后端分離已經成為中大型軟件項目開發(fā)的最佳實踐,下面這篇文章主要給大家介紹了關于通過Docker部署前后端分離項目的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-06-06
  • Docker如何訪問到宿主機MYSQL的實現方法

    Docker如何訪問到宿主機MYSQL的實現方法

    使用?Docker?能實現服務的容器化,并使用容器間網絡在它們之間進行通信,本文主要介紹了Docker如何訪問到宿主機MYSQL的實現方法,感興趣的可以了解一下,感興趣的可以了解一下
    2023-09-09
  • 詳解SpringBoot項目docker環(huán)境運行時無限重啟問題

    詳解SpringBoot項目docker環(huán)境運行時無限重啟問題

    這篇文章主要介紹了詳解SpringBoot項目docker環(huán)境運行時無限重啟問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • docker拉取鏡像查看版本的方法步驟

    docker拉取鏡像查看版本的方法步驟

    這篇文章主要介紹了docker拉取鏡像查看版本的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-05-05
  • docker環(huán)境中websocket?通過nginx代理不通解決方案

    docker環(huán)境中websocket?通過nginx代理不通解決方案

    這篇文章主要介紹了docker環(huán)境中websocket?通過nginx代理不通解決方案,下面是一些可能會導致?WebSocket?代理失敗的問題以及相應的解決方法,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-05-05
  • 詳解docker容器的層的概念

    詳解docker容器的層的概念

    這篇文章主要介紹了詳解docker容器的層的概念,幫助大家更好的理解和學習使用docker容器,感興趣的朋友可以了解下
    2021-04-04
  • docker安裝RabbitMQ及安裝延遲插件的詳細過程

    docker安裝RabbitMQ及安裝延遲插件的詳細過程

    MQ(message queue)字面意思上來說消息隊列,是一種跨進程的通信機制,用于上下游傳遞消息,本文給大家詳細介紹docker安裝RabbitMQ及安裝延遲插件的過程,感興趣的朋友一起看看吧
    2022-06-06

最新評論