本篇文章给大家一分钟学会Docker安装phpmyadmin(分享)有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
php入门到就业线上直播课:进入学习
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API调试工具:点击使用
我们在云服务器上的MySQL数据库在暴露端口和开启远程连接的情况下,是非常不安全的,昨天我的一台服务器就遭到了勒索病毒的攻击,让我支付0.06比特币赎回我的数据。还好那个库中没有重要数据,只是一个弃用了半年的数据库,密码我自己都忘记了,还好通过手段找回了密码,登上去之后就傻眼了。那么如果我们不想开启远程登录还想操作数据库,怎么办?怎么办?用phpmyadmin就可以解决了,不过phpmyadmin也有一定的风险,下面看下怎么玩。
使用Docker发布phpmyadmin并且连接已经存在的MySQL容器
首先下载phpmyadmin的docker镜像
1
2
3
4
5
6
7
# 先查询镜像仓库里有哪些镜像
docker search phpmyadmin
# 拉取star最多的镜像
or
拉取你想用的镜像
docker pull docker.io/phpmyadmin/phpmyadmin
拉取镜像需要一段时间,这个要看服务器的带宽网速了
启动镜像,连接到已存在的MySQL容器
1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 启动镜像
docker run --name myadmin -p 80:80 -d --link mysql-db:db docker.io/phpmyadmin/phpmyadmin
# 修改容器配置文件
## 将配置文件复制到宿主机中
docker cp myadmin:/etc/phpmyadmin/config.inc.php .
## 修改配置文件信息(这里修改的db就是在启动的时候--link后面指定的别名)
$cfg
[
'Servers'
][
$i
][
'host'
] =
'localhost'
——>
$cfg
[
'Servers'
][
$i
][
'host'
] =
'db'
## 将修改后的配置文件复制回容器中
docker cp ./config.inc.php myadmin:/etc/phpmyadmin/
# 重启phpmyadmin容器
此处就可以连接了,当然你也可以修改配置文件限制连接的用户,然后在MySQL中给连接用户授权
使用docker-compose创建
安装docker-compose,这里就不赘述了,
编写docker-compose.yml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
version:
"2"
services:
mysql:
image: hub.c.163.com/library/mysql
container_name: test-mysql
restart: always
ports:
-
"3306:3306"
environment:
MYSQL_USER:
"root"
MYSQL_PASSWORD:
"root"
MYSQL_ROOT_PASSWORD:
"root"
networks:
- net-mysql
phpmyadmin:
image: docker.io/phpmyadmin/phpmyadmin
container_name: test-myadmin
ports:
-
"80:80"
environment:
MYSQL_USER:
"root"
MYSQL_PASSWORD:
"root"
MYSQL_ROOT_PASSWORD:
"root"
networks:
- net-mysql
networks:
net-mysql:
发布容器
1
2
# 使用命令发布容器
docker-compose up -d
然后就可以使用了,不需要修改任何配置文件
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/2980.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~