這篇文章給大家一分鐘學會Docker安裝phpmyadmin(分享)有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。
我們在雲端伺服器上的MySQL資料庫在暴露連接埠和開啟遠端連線的情況下,是非常不安全的,昨天我的一台伺服器就遭到了勒索病毒的攻擊,讓我支付0.06比特幣贖回我的資料。還好那個庫裡沒有重要數據,只是一個棄用了半年的資料庫,密碼我自己都忘了,還好透過手段找回了密碼,登上去之後就傻眼了。那如果我們不想開啟遠端登入還想操作資料庫,該怎麼辦?怎麼辦?用phpmyadmin就可以解決了,但phpmyadmin也有一定的風險,下面看怎麼玩。
先下載phpmyadmin的docker映像
# 先查询镜像仓库里有哪些镜像 docker search phpmyadmin # 拉取star最多的镜像or拉取你想用的镜像 docker pull docker.io/phpmyadmin/phpmyadmin 拉取镜像需要一段时间,这个要看服务器的带宽网速了
啟動鏡像,連接到已存在的MySQL容器
# 启动镜像 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.yml檔案
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:
發布容器
# 使用命令发布容器 docker-compose up -d
然後就可以使用了,不需要修改任何設定檔
推薦學習:《PHP影片教學》
以上是一分鐘學會Docker安裝phpmyadmin(分享)的詳細內容。更多資訊請關注PHP中文網其他相關文章!