自定义网络
1、自定义网络
[root@localhost ~]# docker network create lnmp
ce6ea36481f70abe95137e9c20aa6ab3139d9b7a13f416ea8151410719b200d3
[root@localhost ~]# docker network ls
NETWORK ID NAME DRIVER SCOPE
1ec475dcb0eb bridge bridge local
29c221f77037 host host local
ce6ea36481f7 lnmp bridge local
c2c59bd6d6b1 none null local
2、创建 Mysql 数据库容器
[root@localhost ~]# docker run -itd \ 开启一个容器的命令
> --name lnmp_mysql \ 设置名称
> --net lnmp \ 设置网络
> -p 3306:3306 \ 暴露端口
> --mount src=mysql-vol,dst=/var/lib/mysql \ 指定存储
> -e MYSQL_ROOT_PASSWORD=123456 \ 设置数据库的密码
> mysql --character-set-server=utf8 设置中文编码
3、创建所需数据库
[root@localhost ~]# docker exec lnmp_mysql sh -c 'exec mysql -uroot -p"$MYSQL_ROOT_PASSWORD" -e"create database wp"'
mysql: [Warning] Using a password on the command line interface can be insecure.
PS:要宿主机上登录 mysql: 所以你要配置远程登陆:
[root@docker ~]# docker exec -it lnmp_mysql /bin/bash
root@20f3b473fe07:/# mysql -uroot -p123456
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY
'root';
[root@docker ~]# mysql -h192.168.92.218 -uroot -proot
MySQL [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| wp |
PS:如果宿主机上面没有mysql的话 ,需要装一个mariadb 就好了(不用装server)
3、创建 PHP 环境容器
PS : 记得要拉取 richarvey/nginx-php-fpm 镜像
如果没有这个镜像就会报错。
[root@localhost ~]# docker pull richarvey/nginx-php-fpm
指定的ralph/wwwroot 这个文件是需要自己创建的
[root@localhost ~]# docker run --name lnmp_web --network lnmp -p 88:80 --mount type=bind,src=/ralph/wwwroot,dst=/var/www/html richarvey/nginx-php-fpm
5、以 wordpress 博客为例测试
去下载博客
wget https://cn.wordpress.org/wordpress-4.7.4-zh_CN.tar.gz
tar zxf wordpress-4.7.4-zh_CN.tar.gz -C /ralph/wwwroot
再打开你的流量器访问IP:88端口