docker 搭建LNMP网站平台

准备好镜像

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文件
- user nobody;
- worker_processes 4;
- worker_rlimit_nofile 65535;
- error_log logs/error.log notice;
- pid /var/run/nginx.pid;
- events {
- use epoll;
- worker_connections 4096;
- }
- http {
- include mime.types;
- default_type application/octet-stream;
- log_format main '$remote_addr - $remote_user [$time_local] "$request" '
- '$status $body_bytes_sent "$http_referer" '
- '"$http_user_agent" "$http_x_forwarded_for"';
- access_log off;
- keepalive_timeout 65;
- client_max_body_size 64m;
- server {
- listen 80;
- server_name www.abc.com;
- index index.php index.html;
- access_log logs/www.abc.com_access.log;
- error_log logs/www.abc.com_error.log;
- # location ~ .*\.(js|css|html|png|gif|jpg|jpeg)$ {
- location / {
- root /wwwroot;
- }
- location ~* \.php$ {
- root /wwwroot;
- fastcgi_pass lnmp_php:9000; #需要自定义网络地址通过DNS解析
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- include fastcgi_params;
- }
- }
- }
运行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网站平台的更多相关文章
- Docker搭建LNMP网站平台
1.自定义网络 [root@linux-docker01 ~]# docker network create lnmp 67e7e0736b2c58f8f81eed50130803b34be0583f ...
- Docker进阶之八:搭建LNMP网站平台实战
搭建LNMP网站平台实战 LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写.L指Linux,N指Nginx,M一般指MySQL,也可以指MariaDB,P一般指PHP,也可 ...
- Docker: 快速搭建LNMP网站平台
快速搭建LNMP网站平台 步骤: 1.自定义网络(这里建立一个自定义网络,名字叫 lnmp, 让LNMP网站的服务,都加入这个自定义网络)docker network create lnmp2.创建M ...
- docker搭建lnmp环境
1.搭建lnmp网站平台 1.创建mysql数据库容器 docker run -it -d --name lnmp_mysql -p 3308:3306 -e MYSQL_ROOT_PASSWORD= ...
- 【译文】用Spring Cloud和Docker搭建微服务平台
by Kenny Bastani Sunday, July 12, 2015 转自:http://www.kennybastani.com/2015/07/spring-cloud-docker-mi ...
- Mac下docker搭建lnmp环境 + redis + elasticsearch
之前在windows下一直使用vagrant做开发, 团队里面也是各种开发环境,几个人也没有统一环境,各种上线都是人肉,偶尔还会有因为开发.测试.生产环境由于软件版本或者配置不一致产生的问题, 今年准 ...
- docker搭建lnmp环境(问题,资料,命令)
入门参考 http://www.runoob.com/docker/docker-install-nginx.html 十大常用命令玩转docker 1. #从官网拉取镜像 docker pull & ...
- Spring Cloud和Docker搭建微服务平台
用Spring Cloud和Docker搭建微服务平台 This blog series will introduce you to some of the foundational concepts ...
- Docker搭建代码检测平台SonarQube并检测maven项目
1 前言 良好的代码习惯是一个优秀程序员应该具备的品质,但靠人的习惯与记忆来保证代码质量,始终不是一件靠谱的事.在计算机行业应该深知,只要是人为的,都会有操作风险.本文讲解如何通过Docker搭建代码 ...
随机推荐
- linux安装dubbo与zookeeper(一)
所需工具: jdk1_7.tar.gz dubbo-admin-2.5.4.war(此文件不需解压) zookeeper.tar.gz tomcat7.0.tar.gz 以上文件下载需根据自己的电脑系 ...
- 小程序开发-block组件的使用
微信小程序中,block不是一个组件,而是一个包装元素,不会在页面中做任何渲染. 使用情况:条件渲染 wx:if 因为 wx:if 是一个控制属性,需要将它添加到一个标签/组件上,用于控制隐藏与显示. ...
- 上传文件到服务器指定位置 & 从服务器指定位置下载文件
需要的jar包: 去maven仓库自己搜索com.jcraft下载jar包 <dependency> <groupId>com.jcraft</groupId> & ...
- java多版本管理
背景 java版本的升级也比较频繁, 每年一个版本或更多 虽然java环境变量的配置无技术性可言, 但对于频繁切换也是比较枯燥的 java版本管理工具 sdkman: https://sdkman.i ...
- Shader 001 - 函数造型能力
0x00 从函数出发 Shader 中的很多效果都是由函数计算得出的,如何更好地理解二者的关系呢.不妨先看看函数是什么?函数的定义可以简单地描述为:给定一个集合 A,对于其中的元素施加法则 f,则可以 ...
- pycharm+Django启动我的第一个页面(Django二)
打开pycharm(社区版),File->open 找到由命令 django-admin startproject mysite 在D盘下创建的文件夹mysite mysite通过文件资源管理器 ...
- linux下开启防火墙,允许通过的端口
1.查看防火墙状态 systemctl status firewalld 2.如果不是显示active状态,需要打开防火墙 systemctl start firewalld 3.# 查看所有已开放的 ...
- 修改mysql、oracle、sqlserver默认端口
一.修改mysql默认端口1202 1.修改mysql安装路径下的my.ini文件中的2个port值 2.修改后重启服务,win+r输入services.msc进入服务,重启服务 二.修改oracle ...
- [极客大挑战 2019]Havefun wp
很少见的很简单的一道题 查看源代码 获得一段被注释的代码 直接?cat=dog即可得flag
- PowerJob 应对庞大任务的锦囊妙计:MapReduce
本文适合有 Java 基础知识的人群 作者:HelloGitHub-Salieri HelloGitHub 推出的<讲解开源项目>系列.讲解 PowerJob 系列即将接近尾声,本系列的干 ...