本文整理自网络,侵删。
环境要求:
IP | hostname |
192.168.1.1 | node1 |
项目规划:
容器网段:172.16.10.0/24
NGINX:172.16.10.10
MySQL:172.16.10.20
PHP:172.16.10.20
网站根目录:/www
nginx配置文件:/conf
mysql持久化目录:/var/lib/mysql
提前准备服务配置文件:
nginx
<strong>docker run -itd --name test nginx #运行test容器 docker cp test:/etc/nginx /conf #copy主配置文件 ls /conf/ conf.d koi-win nginx.conf win-utf fastcgi_params mime.types scgi_params koi-utf modules uwsgi_params docker cp test:/usr/share/nginx/html /www #copy网站目录 ls /www/ 50x.html index.html </strong>
mysql
<strong>[root@node1 ~]# docker rm -f test test [root@node1 ~]# docker run -itd --name test -e MYSQL_ROOT_PASSWORD=pwd123 mysql:5.7 6b8d73ecd541d454f121302963a85d53131286d3118a968525a24ad2315b047b [root@node1 ~]# docker exec -it test sh # mysql -uroot -ppwd123 -h127.0.0.1 .......... mysql> create database test; Query OK, 1 row affected (0.00 sec) mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | test | +--------------------+ 5 rows in set (0.00 sec) mysql> exit Bye # exit [root@node1 ~]# docker cp test:/var/lib/mysql /var/lib/mysql </strong>
1、配置lnmp虚拟网卡,网段172.16.10.0/24,网关172.16.10.254
<strong>docker network create -d bridge --subnet 172.16.10.0/24 --gateway 172.16.10.254 lnmp </strong>
2、创建nginx容器测试访问
<strong>#创建mysql挂载数据目录、开发端口、指定IP [root@node1 ~]# docker run -itd --name mysql -p 3306:3306 -v /var/lib/mysql:/var/lib/mysql --network lnmp --ip 172.16.10.20 mysql:5.7 448227483a9c3141c2155d2c7b027aec263bfcfe4ebc49371b6817c17565ff81 #查看运行状态 [root@node1 ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 448227483a9c mysql:5.7 "docker-entrypoint.s…" 10 seconds ago Up 9 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp mysql 4d1e99a06972 nginx:latest "/docker-entrypoint.…" 3 minutes ago Up 3 minutes 0.0.0.0:80->80/tcp nginx 6b8d73ecd541 mysql:5.7 "docker-entrypoint.s…" 9 minutes ago Up 9 minutes 3306/tcp, 33060/tcp test #测试登录 [root@node1 ~]# yum -y install mariadb [root@node1 ~]# mysql -uroot -ppwd123 -h127.0.0.1 Welcome to the MariaDB monitor. Commands end with ; or \g. Your MySQL connection id is 2 Server version: 5.7.33 MySQL Community Server (GPL) Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MySQL [(none)]> Bye </strong>
3、运行MySQL容器
<strong>[root@node1 www]# docker run -itd --name php-fpm -p 9000:9000 -v /www:/usr/share/nginx/html --network lnmp --ip 172.16.10.30 php:7.2-fpm ae09213d7c8c84299b1522ca474fccf7f26e27973cd02563891c37d51799b766 [root@node1 www]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ae09213d7c8c php:7.2-fpm "docker-php-entrypoi…" 7 seconds ago Up 6 seconds 0.0.0.0:9000->9000/tcp php-fpm</strong>
4、创建php-fpm容器
<strong>[root@node1 ~]# vim /conf/conf.d/default.conf </strong>
5、nginx和PHP的连接
相关阅读 >>
设置.net1.1 .net2.0安全 防止iisspy 防止aspx木马等
discuz 论坛注册的时候提示 内部错误,无法显示此内容的解决方法
更多相关阅读请进入《Discuz论坛》频道 >>