docker run -it --name mywordpress2 -p 9999:80 -d wordpress
-v
参数来指定挂载点。例如,假设你有一个硬盘 /data
,你可以将它挂载到 WordPress容器内的 /var/www/html
目录上,命令如下所示:docker run -it --name mywordpress2 -p 9999:80 -v /data:/var/www/html -d wordpress
这样,容器内的 WordPress 网站就会使用 /data
目录作为持久存储,你可以将数据保存在该目录下,即使容器被删除或重新创建,数据也不会丢失。请确保在运行此命令之前,已经在主机上创建了目标挂载点。
docker ps
CONTAINER ID IMAGE COMMAND CREATEDSTATUSPORTSNAMESd20caba62aa8 wordpress "docker-entrypoint.s…" About a minute ago Up About a minute 0.0.0.0:9999->80/tcp mywordpress2
http://localhost:9999/wp-admin/setup-config.php
进行安装,这时的ip地址是宿主机的IP,因为我的宿主机就是本机,所以访问地址为:http://localhost:9999。docker pull mysql:5.7
docker run -it --name=mysql5.7 -p 3305:3306 -e MYSQL_ROOT_PASSWORD=123456 -e TZ=Asia/Shanghai -d mysql:5.7 --character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci--lower_case_table_names=1
挂载卷可以参考如下(将路径修改为你想要挂载的位置):
docker run -it --name=mysql5.7 -p 3305:3306 -e MYSQL_ROOT_PASSWORD=123456 -e TZ=Asia/Shanghai -e MYSQL_INITDB_ARGS="--character-set-server=utf8mb4 --collation-server=utf8mb4_general_ci --lower_case_table_names=1" -v S:\mysqlbak:/var/lib/mysql -d mysql:5.7
#进入容器docker exec -it mysql5.7 bash#进入mysql数据库--123456mysql -u root -p#设置mysql允许访问GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;FLUSH PRIVILEGES;
create database wordpress;
再次进入配置页面(http://ip:9999) 这里的mysql地址不能为回送地址(127.0.0.1),而是应该为宿主机地址,配置如下
docker链接本地的数据库主机用host.docker.internal
用docker下载的mysql则用数据库ip进行连接
首先,需要查找正在运行的 MySQL 容器的 IP 地址。可以使用以下命令:
docker inspect | grep IPAddress
是 MySQL 容器的名称。这将输出 MySQL 容器的 IP 地址。无法将“grep”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确 ,然后再试一次。
docker inspect | Select-String IPAddress
是 MySQL 容器的名称。Windows PowerShell
中,命令和参数之间使用空格而不是分号。此外,Docker 在 Windows 上运行在