docker快速部署nginx+php+mysql

docker部署web环境只需要几分钟(如果网速够快)。

第一步:

php部署

1、拉取php-fpm

docker pull php:7.1-fpm

2、部署,并启动php

docker run --name  myphp-fpm -v ~/nginx/www:/usr/share/nginx/html  -d php:7.1-fpm

第二步

nginx部署

1、拉取nginx

$ docker pull nginx:latest

2‘、部署nginx,并启动nginx

docker run --name runoob-php-nginx -p 80:80 -d \
    -v ~/nginx/www:/usr/share/nginx/html:ro \
    --link myphp-fpm:php \
    nginx

第三步

关联php

1、找到docker根目录,创建default.conf配置文件,内容如下:

server {
    listen       80;
    listen  [::]:80;
    server_name  localhost;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.php index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        fastcgi_pass   172.17.0.2:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /usr/share/nginx/html/$fastcgi_script_name;
        #fastcgi_param  SCRIPT_NAME      $fastcgi_script_name;
        include        fastcgi_params;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

2、使用docker copy命令复制到nginx配置目录

docker cp ./default.conf nginx-test:/etc/nginx/conf.d/default.conf

3、进入Nginx容器,并重新加载nginx配置

docker exec -it runoob-php-nginx bash
service nginx reload

配置完就可以运行php了。

第四步

1、拉取mysql

docker pull mysql:latest

2、部署mysql

docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

3、登陆mysql并修改密码

docker exec -it mysql-test bash
mysql -uroot -p123456
mysql> use mysql
mysql> update user set password=password('123456') where user='root' and host='localhost';
mysql> flush privileges; 
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
mysql> flush privileges; 

部署完毕

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Docker是一种容器化技术,可以用来快速部署和管理应用程序。下面是如何使用Docker部署PHPNginxMySQL的步骤: 1. 安装Docker:首先需要在服务器上安装Docker。可以根据操作系统的不同,使用相应的安装命令进行安装。 2. 创建Docker镜像:使用Dockerfile创建一个包含PHPNginxMySQLDocker镜像。在Dockerfile中,指定基础镜像、安装PHPNginxMySQL所需的软件包,并进行配置。 3. 构建Docker镜像:使用Docker命令构建Docker镜像。执行`docker build -t myapp .`命令,其中`myapp`是自定义的镜像名称。 4. 运行Docker容器:使用构建的镜像运行Docker容器。执行`docker run -d -p 80:80 --name mycontainer myapp`命令,其中`mycontainer`是自定义的容器名称。 5. 进入Docker容器:执行`docker exec -it mycontainer /bin/bash`命令,可以进入运行中的Docker容器。 6. 配置NginxMySQL:进入容器后,可以编辑NginxMySQL的配置文件。例如,可以编辑Nginx的配置文件`/etc/nginx/nginx.conf`来指定网站根目录、端口等信息;可以编辑MySQL的配置文件`/etc/mysql/my.cnf`来配置数据库相关的参数。 7. 部署PHP应用:将PHP应用程序放置在指定的网站根目录下。可以使用命令`docker cp`将应用程序复制到容器内部。 8. 重启容器:完成上述配置后,使用`docker restart mycontainer`命令重启Docker容器,以使配置生效。 通过以上步骤,您就可以成功在Docker部署PHPNginxMySQL。这样,您可以利用Docker的优势,快速、可靠地部署和管理这些应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值