准备好镜像

1、创建网络

docker network create lnmp

测试环境需删除全部之前起的容器

docker rm -f $(docker ps -a |awk '{print $1}'|sed '1d')

2、创建MySQL容器

docker run -d --restart=always \

--name lnmp_mysql \

--net lnmp \

--mount src=mysql-vol,dst=/var/lib/mysql \

-e MYSQL_ROOT_PASSWORD=123456 \

-e MYSQL_DATABASE=wordpress mysql:5.7 --character-set-server=utf8

ls /var/lib/docker/volumes/mysql-vol/_data/

3、创建PHP容器

docker run -d \

--restart=always \

--name lnmp_php \

--net lnmp \

--mount src=wwwroot,dst=/wwwroot php:v1

4、创建nginx容器

编写nginx.conf文件

  1. user                 nobody;
  2. worker_processes     4;
  3. worker_rlimit_nofile 65535;
  4. error_log  logs/error.log  notice;
  5. pid        /var/run/nginx.pid;
  6. events {
  7. use epoll;
  8. worker_connections  4096;
  9. }
  10. http {
  11. include       mime.types;
  12. default_type  application/octet-stream;
  13. log_format  main '$remote_addr - $remote_user [$time_local] "$request" '
  14. '$status $body_bytes_sent "$http_referer" '
  15. '"$http_user_agent" "$http_x_forwarded_for"';
  16. access_log off;
  17. keepalive_timeout  65;
  18. client_max_body_size         64m;
  19. server {
  20. listen 80;
  21. server_name www.abc.com;
  22. index index.php index.html;
  23. access_log logs/www.abc.com_access.log;
  24. error_log logs/www.abc.com_error.log;
  25. # location ~ .*\.(js|css|html|png|gif|jpg|jpeg)$ {
  26. location / {
  27. root /wwwroot;
  28. }
  29. location ~* \.php$ {
  30. root /wwwroot;
  31. fastcgi_pass lnmp_php:9000;   #需要自定义网络地址通过DNS解析
  32. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  33. include fastcgi_params;
  34. }
  35. }
  36. }

运行nginx容器

docker volume create nginx-vol

docker run -d \

--name lnmp_nginx \

--net lnmp -p 8000:80 \

--mount type=bind,src=$(pwd)/nginx.conf,dst=/usr/local/nginx/conf/nginx.conf \

--mount src=wwwroot,dst=/wwwroot nginx:v1

进入被容器挂载的目录创建测试文件

cd /var/lib/docker/volumes/wwwroot/_data/

echo " <?php phpinfo();?>" >/var/lib/docker/volumes/wwwroot/_data/test.php

5、以wordpress博客为例

下载地址:https://cn.wordpress.org/wordpress-4.9.4-zh_CN.tar.gz

cd /var/lib/docker/volumes/wwwroot/_data

wget -q https://cn.wordpress.org/wordpress-5.0.3-zh_CN.tar.gz

tar xf wordpress-5.0.3-zh_CN.tar.gz

docker 搭建LNMP网站平台的更多相关文章

  1. Docker搭建LNMP网站平台

    1.自定义网络 [root@linux-docker01 ~]# docker network create lnmp 67e7e0736b2c58f8f81eed50130803b34be0583f ...

  2. Docker进阶之八:搭建LNMP网站平台实战

    搭建LNMP网站平台实战 LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写.L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可 ...

  3. Docker: 快速搭建LNMP网站平台

    快速搭建LNMP网站平台 步骤: 1.自定义网络(这里建立一个自定义网络,名字叫 lnmp, 让LNMP网站的服务,都加入这个自定义网络)docker network create lnmp2.创建M ...

  4. docker搭建lnmp环境

    1.搭建lnmp网站平台 1.创建mysql数据库容器 docker run -it -d --name lnmp_mysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD= ...

  5. 【译文】用Spring Cloud和Docker搭建微服务平台

    by Kenny Bastani Sunday, July 12, 2015 转自:http://www.kennybastani.com/2015/07/spring-cloud-docker-mi ...

  6. Mac下docker搭建lnmp环境 + redis + elasticsearch

    之前在windows下一直使用vagrant做开发, 团队里面也是各种开发环境,几个人也没有统一环境,各种上线都是人肉,偶尔还会有因为开发.测试.生产环境由于软件版本或者配置不一致产生的问题, 今年准 ...

  7. docker搭建lnmp环境(问题,资料,命令)

    入门参考 http://www.runoob.com/docker/docker-install-nginx.html 十大常用命令玩转docker 1. #从官网拉取镜像 docker pull & ...

  8. Spring Cloud和Docker搭建微服务平台

    用Spring Cloud和Docker搭建微服务平台 This blog series will introduce you to some of the foundational concepts ...

  9. Docker搭建代码检测平台SonarQube并检测maven项目

    1 前言 良好的代码习惯是一个优秀程序员应该具备的品质,但靠人的习惯与记忆来保证代码质量,始终不是一件靠谱的事.在计算机行业应该深知,只要是人为的,都会有操作风险.本文讲解如何通过Docker搭建代码 ...

随机推荐

  1. 【转】ANDROID LOLLIPOP SCREEN CAPTURE AND SHARING

    https://datatheorem.github.io/android/2014/12/26/android-screencapture/ https://www.youtube.com/watc ...

  2. Stone(思维)

    链接:https://ac.nowcoder.com/acm/contest/893/D来源:牛客网 题目描述 有n堆石子排成一排,第i堆石子有aiai个石子. 每次,你可以选择任意相邻的两堆石子进行 ...

  3. webpack使用优化(基本篇

    为什么要使用Webpack 与react一类模块化开发的框架搭配着用比较好. 属于配置型的构建工具,比较用容易上手,160行代码可大致实现gulp400行才能实现的功能. webpack使用内存来对构 ...

  4. 2020 最新python入门知识

    1. 基础语法 1.1 注释 在编写代码的时候,有些代码不需要执行或增加代码说明,那么就需要用到注释了. 被注释的文本或代码是不会被执行的. 注释可以使用如下三种方式: # 号 # 第一个注释,本行代 ...

  5. leetcode刷题-74搜索二维矩阵

    题目 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值.该矩阵具有如下特性: 每行中的整数从左到右按升序排列.每行的第一个整数大于前一行的最后一个整数.示例 1: 输入:matrix ...

  6. 面试官问我:看过sharding-jdbc的源码吗?我吧啦吧啦说了一通!!

    写在前面 在产品初期快速迭代的过程中,往往为了快速上线而占据市场,在后端开发的过程中往往不会过多的考虑分布式和微服务,往往会将后端服务做成一个单体应用,而数据库也是一样,最初会把所有的业务数据都放到一 ...

  7. Java多线程类FutureTask源码阅读以及浅析

    FutureTask是一个具体的实现类,实现了RunnableFuture接口,RunnableFuture分别继承了Runnable和Future接口,因此FutureTask类既可以被线程执行,又 ...

  8. 《Linux 操作系统》Linux的常用命令操作大全

    前言 在学习命令之前先学习我们该如何去学习linux 命令. 几乎每一个命令都有参数,每个参数的含义是什么,我们一般也不是全部都能记住,所以我们必须有一个可以知道每一个命令下各个参数的含义的方法. 命 ...

  9. 搭建MQTT学习平台

    关于MQTT协议的介绍就不赘述了,网上资料非常多,直接入正题. MQTT协议的实现非常多,我选择了一个非常轻量级的开源项目来学习MQTT协议——mosquitto,官网:www.mosquitto.o ...

  10. 深入理解Java之装箱与拆箱

    一.Java数据类型 1.在说装箱与拆箱之前,先说一下Java的基本数据类型,Java从数据类型上可以划分为值类型与引用类型,值类型是四类八种,分别是: 整数型:byte̵,short̵,int̵,l ...