用MacBook实操:docker本地部署mysql+php+nginx坏境

这篇具有很好参考价值的文章主要介绍了用MacBook实操:docker本地部署mysql+php+nginx坏境。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

大家好,我拿出我的macbook,带着大家实操用docker部署mysql+php+nginx环境。

之前的小白实操搭建Nginx1.2.0+PHP7.0+MySQL5.7+Thinkphp5项目,看这篇就够了,欢迎阅读。

之前的是服务器上配置环境,现在在mac本地搭建全栈开发环境。

目录

1.docker

1.1docker下载:

1.2配置docker下载镜像

1.3 在本地建好对应映射关系的文件夹

2.mysql

2.1 mysql基础知识学习:MySQL 教程 | 菜鸟教程

2.2 docker下载mysql

2.3 docker配置mysql

2.4 docker查看

 2.5 进入mysql容器使用

3.php

3.1 php基础知识学习:PHP 教程 | 菜鸟教程

3.2 docker下载php-fpm:

3.3 docker配置php

3.4 docker查看

3.5 php中安装连接mysql的扩展

4.nginx

4.1 nginx基础知识学习:Nginx 安装配置 | 菜鸟教程

4.2 docker下载nginx

4.3 docker配置nginx

4.4 docker查看

4.5 docker 里修改 nginx随启动

4.6配置nginx

5.运行

以上,就是今天的学习,关注我,我们一起进步!

欢迎点赞、评论,谢谢!~


本文环境:

时间:2023年

mac:MacBook Pro (13-inch, 2020, Four Thunderbolt 3 ports) 版本11.6

          处理器:2.3 GHz 四核Intel Core i7

docker:v20.10.22

mysql:5.6

php:7.2.34

nginx:1.23.3

1.docker

1.1docker下载:

Get Started | Docker进入官网,如图位置,点击mac版本的docker下载.

 用MacBook实操:docker本地部署mysql+php+nginx坏境

安装后,点击图标:

用MacBook实操:docker本地部署mysql+php+nginx坏境

1.2配置docker下载镜像

docker打开后进入Settings,进入Docker Engine中添加镜像地址,这样下载其他模块速度快一点。

用MacBook实操:docker本地部署mysql+php+nginx坏境

 文章来源地址https://www.toymoban.com/news/detail-486576.html

用MacBook实操:docker本地部署mysql+php+nginx坏境

 

"registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn/",
    "https://hub-mirror.c.163.com/",
    "https://reg-mirror.qiniu.com"
  ]

1.3 在本地建好对应映射关系的文件夹

用MacBook实操:docker本地部署mysql+php+nginx坏境

在www文件夹里新建一个index.php文件

<?php
echo phpinfo();
?>

 

2.mysql

2.1 mysql基础知识学习:MySQL 教程 | 菜鸟教程

MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。

2.2 docker下载mysql

docker pull mysql:5.6

2.3 docker配置mysql

docker run  -it --name mysql -p 3308:3306 -v ~/mynmp/mysql/conf:/etc/mysql/conf.d -v ~/mynmp/mysql/logs:/logs -v ~/mynmp/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

–name mysql 指定容器名称为 mysql

-e MYSQL_ROOT_PASSWORD=123456 初始化 root 用户的密码为 123456

-p 3308:3306 将容器的 3306 端口映射到主机的 3308 端口

-v ~/mynmp/mysql/data:/var/lib/mysql 将主机 ~/mynmp/mysql/data 目录挂载到容器的 /var/lib/mysql

-v ~/mynmp/mysql/conf:/etc/mysql/conf.d 将主机 ~/mynmp/mysql/conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf

-v ~/mynmp/mysql/mysql_sock:/var/run/mysqld 将主机 ~/mynmp/mysql/mysql_sock 目录挂载到容器的 /var/run/mysqld (为防止 php 容器无权限读取 mysql 容器的 sock 文件)

-d 后台运行

2.4 docker查看

docker ps

 2.5 进入mysql容器使用

进入mysql容器
docker exec -it mysql /bin/bash

启动mysql
mysql -uroot -p123456


查看mysql版本
status

授权远程链接
GRANT ALL ON *.* TO`'root'@'%'`;

刷新权限
flush privileges;

更改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

修改root密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

刷新权限
flush privileges;

3.php

3.1 php基础知识学习:PHP 教程 | 菜鸟教程

PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言。


 

3.2 docker下载php-fpm:

docker pull php:7.2-fpm

3.3 docker配置php

docker run -it --name myphp -p 9000:9000 -v ~/mynmp/php/conf:/usr/local/etc/php/conf.d -v ~/mynmp/www:/www -v ~/mynmp/php/logs:/phplogs --privileged=true -d php:7.2-fpm

--name myphp 指定容器的名称为myphp

-p 9000:9000 将容器的 9000 端口映射到主机的 9000 端口

-v ~/mynmp/www:/www 将主机的 ~/mynmp/www 目录挂载到容器的 /www 目录

-v ~/mynmp/mysql/mysql_sock:/var/run/mysqld 将主机 ~/mynmp/mysql/mysql_sock 目录挂载到容器的 /var/run/mysqld (为防止 php 容器无权限读取 mysql 容器的 sock 文件)

--link mysql:mysql 将 mysql 容器的网络并入 myphp 容器,实现容器间的通信

-d 保持后台运行

3.4 docker查看

docker ps

3.5 php中安装连接mysql的扩展

docker exec -it myphp /bin/bash


docker-php-ext-install mysql
docker-php-ext-install mysqli
docker-php-ext-install pdo

4.nginx

4.1 nginx基础知识学习:Nginx 安装配置 | 菜鸟教程

Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器。在高连接并发的情况下,Nginx是Apache服务器不错的替代品.

4.2 docker下载nginx

docker pull nginx

4.3 docker配置nginx

docker run -it --name mynginx -p 8080:80 -v ~/mynmp/nginx/conf:/etc/nginx/conf.d -v ~/mynmp/www:/www -v ~/mynmp/nginx/logs:/var/log/nginx --link myphp:php -d nginx

--name nginx 指定当前容器名称为 nginx

-p 80:80 将容器的 80 端口映射到主机的 80 端口

-v ~/mynmp/www:/usr/share/nginx/html 将主机的 ~/mynmp/www 目录挂载到容器的 /www

-v ~/mynmp/nginx/conf.d:/etc/nginx/conf.d 将主机的 ~/mynmp/nginx/conf.d 目录挂载到容器的 /etc/nginx/conf.d

--link myphp:php 将 myphp 容器的网络并入 nginx 容器,实现容器间的通信

4.4 docker查看

docker ps

4.5 docker 里修改 nginx随启动

登录docker:  
docker exec -it mynginx /bin/bash

docker实例随docker启动:  
docker update --restart=always mynginx

更改配置后重启:
docker restart mynginx

4.6配置nginx

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

    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root    /www;         
        index  index.html index.htm index.php;
	   # 因为我这里用的TP框架所以加了下面这个,可以根据自己情况去掉
        if (!-e $request_filename){
            rewrite ^(.*)$ /index.php?s=/$1 last;
            break;
        }
    }


    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
        fastcgi_pass   172.17.0.3:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /www$fastcgi_script_name;
    # scripts$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;
    #}
}

5.运行

以上三个模块安装配置好里,docker ps查看如下:

用MacBook实操:docker本地部署mysql+php+nginx坏境

用MacBook实操:docker本地部署mysql+php+nginx坏境 打开http://localhost:8080/index.php ,可以看到如下图展示,所有配置完成!~

用MacBook实操:docker本地部署mysql+php+nginx坏境

 以上就是今天的分享,你学会了吗?

 

以上,就是今天的学习,关注我,我们一起进步!

欢迎点赞、评论,谢谢!~

到了这里,关于用MacBook实操:docker本地部署mysql+php+nginx坏境的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在 CentOS 7.4 上使用 Docker极速部署 LNMP (Linux, Nginx, MySQL, PHP) 环境和 WordPress

    前置CentOS7条件: 关闭防护墙: setenforce = 0 systemctl stop firewalld 1. 安装 Docker* 如果你的系统中还没有安装 Docker,可以使用以下命令进行安装:   sudo yum install docker 启动 Docker 服务并设置开机自启: sudo systemctl start docker sudo systemctl enable docker 2. 安装 Docker Compose Docker Compose 可以让

    2024年01月17日
    浏览(48)
  • Docker部署nginx+php环境,简单可用!

    第一步: 安装Docker 访问下面地址,根据你的需要下载安装docker运行环境。 下载docker desktop https://www.docker.com/ 如果你是Windows、macOS(Intel/M1)、Linux桌面OS,都可以下载到对应版本进行安装,相对命令行方式,更加简单方便。 安装完成后,运行docker desktop,显示如下界面: 在任

    2024年02月07日
    浏览(43)
  • Docker部署php运行环境(php-fpm+nginx)

    前言 如果使用docker去部署一套php的运行环境,我们需要构建出nginx、php-fpm两个容器,nginx通过fast_cgi协议去转发php-fpm中的端口,从而实现web server的搭建,接下来以php的laravel框架为演示例子。 部署php-fpm 第一步 编写php-fpm镜像的Dockerfile: ./Dockerfile 第二步 配置Crontab定时任务:

    2024年02月06日
    浏览(57)
  • Docker的配置和部署,并搭建php和nginx环境

    服务器环境:CentOS 7.6 说下体验: 通过安装进度还是有些报错出现的,但是一向“兼容不错的宝塔”还是对他抱有一线希望。 最后还是安装成功了。  装好了,如何使用? Docker 是基于命令行使用的,那现在通过一些实际问题去使用一些命令! 1.首先查看是否安装成功。通过

    2024年02月09日
    浏览(48)
  • docker搭建lnmp(nginx+mysql57+php7.4)

    2.1安装docker-compose 2.2创建项目目录 2.3在项目目录下面创建docker-compose.yml 2.4在该目录下面创建nginx目录,然后创建 default.conf 配置文件 2.5在该目录下面创建web目录,然后创建 index.php 文件 2.6启动docker-compose 2.7访问 2.8停止docker-compose 2.9删除docker-compose 3.0查看docker-compose日志 3.1查

    2024年02月13日
    浏览(42)
  • Navicat使用HTTP通道服务器进行连接mysql数据库(超简单三分钟完成),centos安装nginx和php,docker安装nginx+php合并版

    因为数据库服务器在外网是不能直接连接访问的,但是可以访问网站,网站后台就能访问数据库,所以在此之前,访问数据库的数据是一件非常麻烦的事情,在平时和运维的交流中发现,他们会使用ssh通道进行连接访问数据库,之前并没在意这个东西,直到运维人员一直连不

    2024年02月10日
    浏览(80)
  • Docker部署Springboot应用【mysql部署+jar部署+Nginx部署】

    【项目达到目标】 1.基本准备 2、mysql部署 3、jar部署 4、Nginx部署 一、基本准备 石工拿的就是之前放置在我们服务器上的应用进行部署,主要就是mysql和jar还有Vue的部署。 目前已经有的是jar、已经打包好的vue   二、mysql部署 docker run -d --name mysql     --restart=always     -p 3

    2024年02月14日
    浏览(36)
  • docker应用部署(部署MySql,部署Tomcat,部署Nginx,部署Redis)

    一、部署MySQL 搜索mysql镜像 拉取mysql镜像 创建容器,设置端口映射、目录映射 参数说明: -p 3307:3306 :将容器的 3306 端口映射到宿主机的 3307 端口。 -v $PWD/conf:/etc/mysql/conf.d :将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。配置目录 -v $PWD/logs:/logs :将主机当前目

    2024年02月03日
    浏览(45)
  • docker的安装部署nginx和mysql

    小白自己整理,如有错误请指示! 自我理解:docker就是把应用程序所用的依赖程序,函数库等相关文件打包成镜像文件,类似系统光盘,然后可以在任意电脑上安装使用(方便运维人员部署程序),没运行一个程序就形成一个容器,程序的相关配置信息都在容器内完成,所以

    2024年02月07日
    浏览(44)
  • docker快速部署Redis、MySQL、Nginx

    拉取镜像 拷贝一份redis.conf文件复制到/home/ubuntu/redis文件夹下,修改redis.conf配置文件 创建redis容器 MySQL 8.0.30 拉取镜像 创建容器 docker安装完成mysql8,如果使用sqlyog或者navite连接,需要修改密码加密规则,因为低版本客户端工具不支持mysql8最新的加密规则。如果使用客户端连接

    2024年02月03日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包