IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> phpMyAdmin Docker部署+nginx反向代理 -> 正文阅读

[系统运维]phpMyAdmin Docker部署+nginx反向代理

1、背景

在客户的项目中有很多场景下不允许开发、运维人员,通过本地的客户端工具连接redis、mysql之类的中间件,进行数据的查看、修改等。所以需要一些特定的软件进行连接。

2、工具介绍

phpMyAdmin 是一个用PHP编写的免费软件工具,旨在?通过 Web处理MySQL的管理。phpMyAdmin 支持对 MySQL 和 MariaDB 的广泛操作。常用操作(管理数据库、表、列、关系、索引、用户、权限等)可以通过用户界面执行,同时您仍然可以直接执行任何 SQL 语句。详细介绍可以查看官网

3、部署

部署方式

1.docker run –name myadmin -d –link mysql_db_server:db -p 8080:80 phpmyadmin
这个是使用连接其他mysql容器的方式启动 –link后跟mysql容器ip


2.docker run –name myadmin -d -e PMA_HOST=dbhost -p 8080:80 phpmyadmin
指定ip启动,PMA_HOST是指向mysql的ip


3.docker run –name myadmin -d -e PMA_ARBITRARY=1 -p 8080:80 phpmyadmin
不特别指定mysql端,登录时再输入,建议使用这个方式启动


反向代理的用法

将变量设置为反向代理使 phpMyAdmin 可用PMA_ABSOLUTE_URI的完全限定路径 。

docker run --name pma -d -e PMA_ARBITRARY=1 -e PMA_ABSOLUTE_URI=http://10.0.0.0/phpmy/ -p 8088:80 phpmyadmin

Nginx反向代理配置文件

location /phpmyadmin/ {
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_set_header X-Forwarded-Host $server_name;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_pass http://10.0.0.0:8088/; # phpmyadmin 真实访问路径
}

总结:

在实际的配置过程中,再点‘执行’的时候会跳转到‘404’的状态码,查看路由发现少了‘/phpmyadmin/’在手动补写路由后正常。

解决办法:

在运行docker的时候加入环境变量‘PMA_ABSOLUTE_URI’补齐路由就可以解决该问题。


环境变量总结

  • PMA_ARBITRARY- 当设置为 1 时,将允许与任意服务器的连接
  • PMA_HOST- 定义 MySQL 服务器的地址/主机名
  • PMA_VERBOSE- 定义 MySQL 服务器的详细名称
  • PMA_PORT- 定义 MySQL 服务器的端口
  • PMA_HOSTS- 定义以逗号分隔的 MySQL 服务器地址/主机名列表
  • PMA_VERBOSES- 定义以逗号分隔的 MySQL 服务器详细名称列表
  • PMA_PORTS- 定义逗号分隔的 MySQL 服务器端口列表
  • PMA_USERPMA_PASSWORD- 定义用户名和密码以仅用于config身份验证方法
  • PMA_ABSOLUTE_URI- phpMyAdmin 的完整 URL。在反向代理配置中使用时有时需要。除非需要,否则不要设置它。请参阅文档
  • PMA_CONFIG_BASE64config.inc.php- 如果设置,此选项将使用变量的 base64 解码内容覆盖默认值
  • PMA_USER_CONFIG_BASE64config.user.inc.php- 如果设置,此选项将使用变量的 base64 解码内容覆盖默认值
  • PMA_CONTROLHOST- 设置时,它指向用于存储phpMyAdmin 配置存储数据库数据库的备用数据库主机
  • PMA_CONTROLPORT- 如果设置,将覆盖默认端口 (3306) 用于连接到控制主机以存储phpMyAdmin 配置存储数据库数据库
  • PMA_PMADB- 定义用于phpMyAdmin 配置存储数据库的数据库名称。未设置时,默认不启用高级功能(用户在使用零配置(零配置)功能登录时仍可能启用它们。建议值:phpmyadminpmadb
  • PMA_CONTROLUSER- 为 phpMyAdmin 定义用户名以用于高级功能(controluser
  • PMA_CONTROLPASS- 定义 phpMyAdmin 与controluser一起使用的密码
  • PMA_QUERYHISTORYDB- 当设置为 true时,可以将SQL 历史记录存储到phpMyAdmin 配置存储数据库为false时,历史记录存储在浏览器中,并在注销时清除
  • PMA_QUERYHISTORYMAX- 当设置为整数时,控制历史项目的数量。请参阅文档。默认为25.
  • MAX_EXECUTION_TIME- 如果设置,将覆盖 phpMyAdmin ( $cfg['ExecTimeLimit']?) 和 PHP?max_execution_time?(格式为)的最大执行时间(默认 600 秒[0-9+]
  • MEMORY_LIMIT- 如果设置,将覆盖 phpMyAdmin (?$cfg['MemoryLimit']?) 和 PHP?memory_limit的内存限制(默认为 512M) (格式为[0-9+](K,M,G)K 代表千字节,M 代表兆字节,G 代表千兆字节,1K = 1024 字节)
  • UPLOAD_LIMIT- 如果设置,此选项将覆盖 apache 和 php-fpm 的默认值(格式为[0-9+](K,M,G)默认值为 2048K,这将更改upload_max_filesizepost_max_size值)
  • HIDE_PHP_VERSION- 如果定义,此选项将隐藏 PHP 版本 (?expose_php = Off)。设置为任何值(例如HIDE_PHP_VERSION=true)。

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-10 23:03:00  更:2022-03-10 23:03:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:45:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码