0%

Alpine下使用Docker构建LNMP多站点环境

1
2
3
4
5
6
7
MySql的部署
docker pull mysql:5.6
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -v /www/mysql:/var/lib/mysql --name mysql mysql:5.6
docker exec -it mysql bash
mysql -u root -p
use mysql;
update user set host = "%" where user = "root";
1
2
3
4
5
6
PHP的部署
docker run -d -p 9000:9000 -v /www/php:/usr/local/etc/php -v /www/nginx/html:/var/www --name php --link mysql:mysql --volumes-from mysql --privileged=true cs2ag/php5.6-devtest;
docker exec -it php bash;

docker stop php;
docker rm php;
1
2
3
4
5
6
7
8
Nginx的部署
docker run -p 80:80 -p 81:81 --name nginx -v /www/nginx/html:/usr/share/nginx/html -v /www/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf --link php:php --link mysql:mysql -d nginx:latest;
docker stop nginx;
docker rm nginx;

docker run -p 80:80 -p 81:81 --name nginx -v /www/nginx/html:/usr/share/nginx/html -v /www/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf --link php:php --link mysql:mysql -d nginx:latest;
docker stop nginx;
docker rm nginx;
1
2
3
4
5
### 参数解析
-v 将本地磁盘上的php代码挂载到docker 环境中,对应docker的目录是 /var/www/html/
--name 新建的容器名称 php-with-mysql
--link 链接的容器,链接的容器名称:在该容器中的别名,运行这个容器是,docker中会自动添加一个host识别被链接的容器ip
--privileged=true 权限问题
iBoy wechat
欢迎您扫一扫上面的微信公众号,订阅我的博客!