Docker部署MySQL及管理工具phpmyadmin

8 篇文章 1 订阅
3 篇文章 1 订阅

Docker部署MySQL及管理工具phpmyadmin

phpmyadmin,一个web版的MySQL客户端管理工具,部署在服务器上,可以解决缺少MySQL客户端管理工具的问题。

本文主要包括以下内容:

  • 使用docker分别部署MySQL、phpmyadmin。
  • 使用docker-compose部署MySQL及phpmyadmin。

phpmyadmin的官网:phpMyAdmin

phpmyadmin的官网文档中,docker部署说明:Installation — phpMyAdmin 5.1.4 documentation

分别部署MySQL、phpmyadmin

mysql

docker run --name mysql_rdb -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7.42

MYSQL_ROOT_PASSWORD:root账户的密码

phpmyadmin

  • 部署脚本
docker run --name myadmin -d -e PMA_ARBITRARY=1 -p 13306:80 phpmyadmin:latest

PMA_ARBITRARY:允许手动输入MySQL的IP地址

容器启动后,输入登陆地址:http://ip:13306,ip地址换成自己服务器的IP。页面如下:

在这里插入图片描述

为了登陆MySQL,此时需要获取MySQL的IP,由于MySQL和phpmyadmin都是在docker默认的bridge网络上,容器之间无法通过容器名称相互访问(参见:http://t.csdn.cn/qvczF),故可以通过查看默认的bridge网络,查看MySQL的IP,执行命令:

docker network inspect bridge

上述命令输出类的信息中,部署信息类似下面:

"Containers": {
            "558a502609e8b31a8caf7e816bc4cd1e7215c897a91fec4eee100911f53bcb24": {
                "Name": "mysql_rdb",
                "EndpointID": "b760349f587073e09a622d375b797fa8dabb641abfb92f859995d3115a8e3df5",
                "MacAddress": "02:42:ac:11:00:04",
                "IPv4Address": "172.17.0.4/16",
                "IPv6Address": ""
            },
            "5dc9e56d55558c6c9412e5fe49c89a1d5da03f50ab927429665f8dfdeee17c3f": {
                "Name": "myadmin",
                "EndpointID": "4c0ea505a8d98e05e859088d342a6f91d4c29e814ca07181a15b85685300215e",
                "MacAddress": "02:42:ac:11:00:05",
                "IPv4Address": "172.17.0.5/16",
                "IPv6Address": ""
            }
        }

  • 上面信息中可以看到,MySQL容器mysql_rdb的IP地址为:172.17.0.4(你的可能不一样)
  • 将上面的IP输入phpmyadmin中【服务器】中,输入用户名:root,密码:123456,点击【执行】,即可登陆:
    在这里插入图片描述

注意: 这种部署方式,需要查找MySQL的IP,而这个IP可能会变化,存在不稳定因素。故推荐使用docker-compose,定义自己的bridge网络,完成部署

docker-compose部署

docker-compose的安装:Overview | Docker Documentation

  1. 先创建自定义的bridge网络,连接到自定义bridge网络上的容器,可以通过容器名称相互访问,无法关注对方的IP,执行下面的命令

    docker network create mysql-net
    
  2. 编写docker-compose.yml文件。

    version : '3'
    services:
      # MySQL容器
      mysql_rdb:
          # 容器名
        container_name: mysql_rdb
          # 重启策略
        restart: always
        image: mysql:5.7.42
         # 自定义的bridge网络
        networks:
          - mysql-net
        ports:
          # 指定127.0.0.1,则MySQL无法通过其他主机访问,只能本地服务器访问,保障安全
          - "127.0.0.1:3306:3306"
        volumes:
          # 挂挂载配置文件
          - /home/Pdstars/mysql/conf:/etc/mysql/conf.d
          # 挂载数据
          - /home/Pdstars/mysql/data:/var/lib/mysql
        environment:
          # root 密码
          MYSQL_ROOT_PASSWORD: 123456
          TZ: Asia/Shanghai
      # phpmyadmin容器
      mysql_rdb_manage:
        container_name: mysql_rdb_manage
        image: phpmyadmin:latest
        ports:
          - 13306:80
        environment:
         # 指定要连接的数据库,使用MySQL的容器名称
         - PMA_HOST=mysql_rdb
         # 指定要连接数据库的端口
         - PMA_PORT=3306
        depends_on:
          # 依赖MySQL容器
          - mysql_rdb
        networks:
          # 自定义的bridge网络
          - mysql-net
        deploy:
          resources:
            limits:
              memory: 500M
        restart: always
    networks:
       # 自定义的bridge网络
      mysql-net:
        external: true
    
    
  3. 将上面的docker-compose.yml放到服务器特定目录下,如/home

  4. 启动使用docker compose命令启动,先删除原来分别部署的MySQL、phpmyadmin:

    #删除原来的phpmyadmin
    docker rm -f myadmin
    #删除原来的MySQL
    docker rm -f mysql_rdb
    #启动docker-compose.yml
    docker compose up -d
    #有的版本的docker compose启动命令是
    docker-compose up -d
    
  5. 启动后,访问登陆页:http://ip:13306,ip地址换成自己服务器的IP。页面如下:

在这里插入图片描述

  • 此时,不用输入服务器地址,直接输入用户名:root,密码:123456,即可登陆。
  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要在Docker中安装MySQLphpMyAdmin作为管理工具,您可以按照以下步骤进行操作: 1. 首先,根据官方文档中的说明,使用Docker运行MySQL容器。您可以使用以下命令: ``` docker run --name mysql_rdb -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:5.7.42 ``` 这将创建并运行一个名为"mysql_rdb"的MySQL容器,并将它映射到本地的3306端口。 2. 接下来,您可以使用以下命令在Docker容器内连接到MySQL数据库: ``` docker run -it --rm mysql mysql -h <MySQL容器的IP地址> -u root -p ``` 请将"<MySQL容器的IP地址>"替换为实际的MySQL容器的IP地址。这将打开一个交互式的MySQL终端,并要求您输入MySQL的root密码。 3. 最后,您可以使用Docker-compose来部署MySQLphpMyAdmin。编写一个docker-compose.yml文件,并在其中指定MySQLphpMyAdmin的服务。然后使用以下命令运行Docker-compose: ``` docker-compose up -d ``` 这将根据docker-compose.yml文件中的配置启动MySQLphpMyAdmin服务。 总结起来,要在Docker中安装MySQLphpMyAdmin作为管理工具,您可以按照以下步骤进行操作:首先运行MySQL容器,然后使用命令连接到MySQL数据库,最后可以使用Docker-compose来部署MySQLphpMyAdmin。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Docker部署MySQL管理工具phpmyadmin](https://blog.csdn.net/yudaxiaye/article/details/131713133)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [docker安装mysqlphpmyadmin](https://blog.csdn.net/MoLi_516/article/details/110299260)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值