docker nginx+php(docker nginx反向代理)

一、docker安装:将微信公众号项目运行绑定至80端口(微信服务器只能和外部开通了80端口的服务器之间通信)docker一次构建可放在任何地方就可以运行,不需要进行任何改变DocKer就类似于一个容器。这个容器就好像咱们常用的虚拟机一样,当我们虚拟机里面安装过VS、SQL、浏览器……之后咱们就把虚拟机镜像备份下来、等到下一次需要重新搭一个环境的时候,就可以省去很多事情了,直接…

大家好,又见面了,我是你们的朋友全栈君。

一、docker安装:

  • docker一次构建可放在任何地方就可以运行,不需要进行任何改变DocKer 就类似于一个容器。这个容器就好像咱们常用的虚拟机一样,当我们虚拟机里面安装过VS、SQL、浏览器 … 之后咱们就把虚拟机镜像备份下来、等到下一次需要重新搭一个环境的时候,就可以省去很多事情了,直接把备份的虚拟机运行起来,该有的就都有了,省去了很多事情。

  • 安装指令:
    $ sudo yum install http://mirrors.yun-idc.com/epel/6/i386/epel-release-6-8.noarch.rpm
    $ sudo yum install docker-io

  • 启动
    $ sudo service docker start

二、编辑启动脚本:

  • 在系统中建立一个专门存放docker启动的脚本,分别是,start_docker_mysql.sh,start_docker_nginx.sh,start_docker_php.sh,完成后目录如下
    这里写图片描述

  • 1.启动脚本建立好了以后首先开始mysql的安装,在start_docker_mysql.sh里面写入内容:
    sudo docker run --name mysql -p 3306:3306 -d -e MYSQL_ROOT_PASSWORD=xiukang -v /home/docker-mysql:/var/lib/mysql registry.cn-hangzhou.aliyuncs.com/qinyujia-test/mysql 具体代码内容指令请查看docker相关教程

  • 2.编写启动php脚本。在start_docker_php.sh中写入一下内容:
    sudo docker run --name php --link=mysql:mysql -d -v /home/wwwroot:/home/wwwroot -v /home/wwwlogs:/home/wwwlogs -v /tmp:/tmp -v /etc/localtime:/etc/localtime --privileged=true wgkj/php

  • 3.编写启动nginx脚本。在start_docker_nginx.sh中写入一下内容:
    这里写图片描述

三、添加nginx 配置文件:

  • 在启动nginx 脚本中可以看到在/home/pure_nginx_vhosts这个目录是存在nginx.conf的文件,我们采用多站点运行方式得话, 所有配置文件需要统一放这个目录下,如图:
    这里写图片描述
    本次只添加了一个默认的配置文件,配置文件内容如下:
    这里写图片描述
    这是默认的配置文件,其他的项目配置文件可以参考该文件进行编写, 具体指令请参考nginx配置教程

  • 在nginx配置完后,咱们就需要配置项目文件了,从启动nginx 的脚本中,我们将/home/wwwroot/目录统一设置为项目目录,/home/wwwlogs/目录统一设置为日志目录,项目中的日志,docker的日志均可放这里。

      现在我们需要配置一个nginx访问地址,在`/home/wwwroot/`目录下建立 default目录
      然后新建 index.html或者index.php文件,文件内容随意。
    

我的内容如下
这里写图片描述

四、运行项目:

  • 按顺序执行编写的三个脚本,顺序本别是,start_docker_mysql.sh -> start_docker_php.sh -> start_docker_nginx.sh
  • 执行完成后入下图:
    这里写图片描述
    mysql,php,nginx都启动成功的话,会是上图的情况,
  • 如果没有启动成功,请检测自己的脚本是否编写有有误,可以执行 docker logs -f mysql 查看启动日志等。

五、运行访问:

  • 项目访问时需要访问到服务器的80,3306 端口,请检查该端口是否开放
  • 在浏览器上输入服务器ip地址或者配置好的域名,出现如下图则为配置成功
    这里写图片描述
  • 同样MySQL可以以用mysql客户端进行访问

六、结束语:
对此,docker部署nginx,mysql,php基本结束
对docker或者linux不太熟悉的同学,在部署中若遇到问题,可以查阅相关的文档或者联系我(1102842479@qq.com),遇到问题是正常情况,大家需要静下心来,找到问题的所在,才能成功

在这里插入图片描述
谢谢支持

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/128239.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Docker镜像自动执行脚本.sh

    Docker镜像自动执行脚本.sh由于博客现在在docker中部署的,每次打包部署,需要停掉旧容器->删除旧容器->删除镜像->将新的jar包打包成镜像->再次运行,每次发布都需要重复的执行此操作,于是想将所有命令写成脚本,jar包上传之后,运行脚本即可。命令:app_name=’java-blog’app_port=’8081’# 停止正在运行的容器echo ‘……stop container……’docker stop ${app_name}# 删除容器echo ‘…..

    2022年6月13日
    193
  • docker下载安装教程_mac装sql server

    docker下载安装教程_mac装sql server前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月31日
    4
  • docker项目经验_如何培育与指导部署

    docker项目经验_如何培育与指导部署每个人的前半生,都在不停地做加法。可到了后半生,我们就要学会不断地做减法。目录前置工作1、需要准备的东西2、连接云服务器安装Docker环境1、安装Docker的依赖库。2、添加DockerCE的软件源信息。3、安装DockerCE。4、启动Docker服务。准备Dockerfile并部署项目(构建新的业务镜像)1、准备nginx.conf.template、Dockerfile、dist(前端项目build后的包)2、部署项目知识点(需要…

    2022年10月19日
    3
  • mac电脑卸载软件_docker卸载镜像

    mac电脑卸载软件_docker卸载镜像  在Mac上卸载docker,首先要关闭docker软件,然后进入/usr/local/bin/目录,依次使用如下命令:##1)进入docker的安装目录cd/usr/local/bin/##2)删除与docker相关的文件夹sudorm-rfdocker*sudorm-rfcom.docker.*sudorm-rfhub-tool*sudorm-rfkube*sudorm-rfvpnkit*  如图(1)所示:图(1)完成删除

    2022年8月30日
    5
  • docker(1)下载安装for mac[通俗易懂]

    docker(1)下载安装for mac[通俗易懂]前言Docker提供轻量的虚拟化,你能够从Docker获得一个额外抽象层,你能够在单台机器上运行多个Docker微容器,而每个微容器里都有一个微服务或独立应用,例如你可以将Tomcat运行在一个D

    2022年7月30日
    6
  • docker搭建LDAP统一用户认证

    docker搭建LDAP统一用户认证1 安装 LDAPdockerru dit p389 389 v data ldap ldap var lib ldap v data ldap slapd d etc ldap slapd d nameldap envLDA

    2025年7月4日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号