Docker compose 一键部署LNMP平台

docker-compose.yml

version: ‘3‘
services:
  nginx:
    hostname: nginx
    build:
      context: ./nginx
      dockerfile: Dockerfile
    ports:
      - 80:80
    links:
      - php:php-cgi
    volumes:
      - ./wwwroot:/usr/local/nginx/html

  php:
    hostname: php
    build: ./php
    links:
      - mysql:mysql-db
    volumes:
      - ./wwwroot:/usr/local/nginx/html

  mysql:
    hostname: mysql
    image: mysql:5.6
    ports:
      - 3306:3306
    volumes:
      - ./mysql/conf:/etc/mysql/conf.d
      - ./mysql/data:/var/lib/mysql
    # command: --character-set-server=utf8
    environment:
      MYSQL_ROOT_PASSWORD: 123456
      MYSQL_DATABASE: wordpress
      MYSQL_USER: user
      MYSQL_PASSWORD: user123

nginx Dockerfile(配置文件和root目录都在当前路径下)

FROM centos:6
MAINTINER dengwenlong
RUN yum install -y gcc gcc-c++ make openssl-devel pcre-devel
ADD nginx-1.14.0.tar.gz /tmp
RUN cd /tmp/nginx-1.14.0.tar.gz && ./configure --prefix=/usr/local/nginx && make && makeinstall
COPY nginx.conf /usr/local/nginx/conf
EXPOSE 80
CMD ["/usr/local/nginx/sbin/nginx", "-g", "daemon off;"]

mysql(使用docker pull mysql:5.6 镜像)

mkdir conf
mkdir data

php Dockerfile

FROM centos:6
MAINTAINER dengwenlong
RUN yum install -y gcc gcc-c++ gd-devel libxml2-devel libcurl-devel libjpeg-devel libpng-devel openssl-devel
ADD php-5.6.31.tar.gz /tmp/
RUN cd /tmp/php-5.6.31 &&     ./configure --prefix=/usr/local/php     --with-config-file-path=/usr/local/php/etc     --with-mysql --with-mysqli     --with-openssl --with-zlib --with-curl --with-gd     --with-jpeg-dir --with-png-dir --with-iconv     --enable-fpm --enable-zip --enable-mbstring &&     make -j 4 && make install &&     cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf &&     sed -i "s/127.0.0.1/0.0.0.0/" /usr/local/php/etc/php-fpm.conf &&     cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm &&     chmod +x /etc/init.d/php-fpm
COPY php.ini /usr/local/php/etc
EXPOSE 9000
CMD /etc/init.d/php-fpm start && tail -F /var/log/messages

原文地址:http://blog.51cto.com/1014810/2114484

时间: 2024-11-08 13:26:41

Docker compose 一键部署LNMP平台的相关文章

Docker Compose 一键部署Nginx代理Tomcat集群

Docker Compose 一键部署Nginx代理Tomcat集群 目录结构 [[email protected] ~]# tree compose_nginx_tomcat/ compose_nginx_tomcat/ ├── docker-compose.yml ├── mysql │   ├── conf │   │   └── my.cnf │   └── data ├── nginx │   ├── Dockerfile │   ├── nginx-1.12.1.tar.gz │  

脚本_部署LNMP平台

#!bin/bash#功能:部署LNMP平台,实际运行脚本时,需要去除备注.#作者:liusingbonfunction menu {                //定义函数menu         clear         echo " ##############----Menu----##############"         echo "# 1. Install Nginx"         echo "# 2. Install MySQ

部署LNMP平台和相关的实验

该实验分为四个部分,实验一为搭建LNMP平台,实验二为测试能否解析php的文件 和连接数据库的效果,实验三为实现地址重写的功能,实验四为不同的浏览器,给出不同样式的页面 实验一:部署LNMP环境 一.目标 安装部署Nginx.MariaDB.PHP环境 安装部署Nginx.MariaDB.PHP.PHP-FPM: 启动Nginx.MariaDB.FPM服务: 并测试LNMP是否工作正常. 二.各软件的安装 1.安装源码包安装时需要的依赖包 yum -y install gcc openssl-d

41.部署LNMP平台源码

源码部署LNMP v 环境需求:关闭防火墙,设置静态IP地址,部署YUM库 # systemctl stop firewalld                  #关闭firewalld防火墙 # systemctl disable firewalld.service           #禁止firewalld服务自启 # sed -i -e 's|SELINUX=enforcing|SELINUX=disabled|' /etc/selinux/config  #关闭SELINUX # s

Linux系统一键部署lnmp

一.首先挂载数据盘1.查看数据盘在没有分区和格式化数据盘之前,使用 “df –h”命令,是无法看到数据盘的,可以使用“fdisk -l”命令查看.2.对数据盘进行分区执行“fdisk /dev/xvdb”命令,对数据盘进行分区:根据提示,依次输入“n”,“p”“1”,两次回车,“wq”,分区就开始了,很快就会完成.3. 查看新的分区使用“fdisk -l”命令可以看到,新的分区xvdb1已经建立完成了.4.格式化新分区使用“mkfs.ext3 /dev/xvdb1”命令对新分区进行格式化,格式化

Centos6部署LNMP平台(二)

[本文档所介绍的内容适用于公司测试/生产常见的php,HTML等web环境部署,即常见的LAMP/LNMP环境部署] 上一小结我们介绍关于LNMP的部署安装,但LNMP的配置还有一个很重要的部分,就是nginx主配置文件nginx.conf的配置,下面就讲讲关于nginx的主配置文件(nginx.conf)的相关参数介绍 如下所示:为nginx主配置文件:nginx.conf参考模板 #user  nobody; user nginx ;   //指定nginx服务的运行账号       wor

Centos6部署LNMP平台(一)

[本文档所介绍的内容适用于公司测试/生产常见的php,HTML等web环境部署,即常见的LAMP/LNMP环境部署] 一:LAMP环境部署前准备: 1.1相关软件以及系统 系统要求:Centos 6.0以上 (64位) 相关中间件:Nginx: 1.6.0 以上   php:版本5.5  mysql-5.5 .25 1.2相关系统依赖包安装检查准备 1.2.1 检查系统自带httpd,mysql是否安装 # rpm -qa | grep httpd  # rpm -qa | grep mysql

一键部署LNMP环境

#!/bin/bashlanguage(){#判断环境语言echo $LANG |grep -q zhif [ $? -eq 0 ];thenreturn 0elsereturn 1fi}error_yum(){languageif [ $? -eq 0 ];thenclearechoecho "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!"echo "错误:本机YUM不可用,请正确配置YUM后重试."echo "

Docker Compose 项目打包部署

Docker Compose 前面我们使用 Docker 的时候,定义 Dockerfile 文件,然后使用 docker build.docker run 等命令操作容器.然而微服务架构的应用系统一般包含若干个微服务,每个微服务一般都会部署多个实例,如果每个微服务都要手动启停,那么效率之低,维护量之大可想而知使用 Docker Compose 可以轻松.高效的管理容器,它是一个用于定义和运行多容器 Docker 的应用程序工具 Docker 和 Compose兼容性看下图: