基于 Ubuntu 16.04 构建,一键自动安装最新版的 php7,支持使用外部MySQL数据库以及Composer组件。
项目地址
一、安装 Docker
关于 Docker 更多信息,请访问其官网。https://docs.docker.com
debian
apt-get update && \
apt-get -y install curl && \
curl -fsSL https://get.daocloud.io/docker | sh \
update-rc.d -f docker defaults && \
service docker start
CentOS
yum update && \
curl -fsSL https://get.docker.com/ | sh && \
systemctl enable docker.service && \
systemctl start docker.service
二、安装外部 MySQL 数据库
如果你想使用内置的数据库,请忽略此步骤(二)(三),直接跳到步骤(四)
2.1 安装 MySQL 数据库
注意将
123456换成你的 MySQL Root 密码
docker run --name mysql \
-v /var/lib/mysql:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=123456 \
-p 3306:3306 \
-d mysql:latest
2.2 安装 phpMyAdmin (可选)
温馨提示:国内主机请将
idiswy/phpmyadmin:latest换成docker.wangyan.org/root/docker-phpmyadmin:latest
docker run --name phpmyadmin \
--link mysql:mysql \
-p 8080:80 \
-P -d idiswy/phpmyadmin:latest
三、安装 LNMP (外部数据库)
-name容器名称-link链接步骤(二)装好的外部数据库-v左边是宿主机路径,右边是容器里的路径
温馨提示:国内主机请将
idiswy/lnmp:latest换成docker.wangyan.org/root/docker-lnmp:latest
docker run --name wangyan \
--link mysql:mysql \
-v /home/wangyan:/home/wangyan \
-p 80:80 \
-p 443:443 \
-d idiswy/lnmp:latest
四、安装 LNMP (内置数据库)
在一个容器中,一键安装全套的LNMP,但如果你想使用外部数据库,请返回到步骤(二)开始安装
4.1 安装 LNMP
-name容器名称-v左边是宿主机路径,右边是容器里的路径-MYSQL_ROOT_PASSWORD设置 MySQL Root 密码
温馨提示:国内主机请将
idiswy/lnmp:latest换成docker.wangyan.org/root/docker-lnmp:latest
docker run --name wangyan \
-v /home/wangyan:/home/wangyan \
-p 80:80 \
-p 443:443 \
-d idiswy/lnmp:latest
4.2 配置内置 MySQL 数据库
注意将
123456换成你的 MySQL Root 密码
docker exec -it wangyan mysql-setup MYSQL_ROOT_PASSWORD=123456
4.3 安装内置 MySQL 数据库时,可额外选用的变量
- MYSQL_USER
- MYSQL_PASSWORD
- MYSQL_DATABASE
docker exec -it wangyan mysql-setup \
MYSQL_ROOT_PASSWORD=123456 \
MYSQL_USER=wangyan \
MYSQL_PASSWORD=123456 \
MYSQL_DATABASE=test
五、其他
5.1 快捷进入容器
首先,安装个小工具
curl --fail -L -O https://github.com/phusion/baseimage-docker/archive/master.tar.gz && \
tar xzf master.tar.gz && \
./baseimage-docker-master/install-tools.sh
然后,进入容器
docker-bash wangyan
5.2 配置文件路径
nginx:
/etc/nginx/nginx.conf
nginx site conf:
/etc/nginx/conf.d/default.conf
nginx site html:
/var/www/
nginx logs:
/var/log/nginx/
php5:
/etc/php/fpm/php.ini
php7:
/etc/php/7.0/fpm/php.ini
5.3 启动、重启操作
sv start|stop|status <service_folder>
例如: sv restart nginx
via 《使用 runit 管理服务 》
5.4.设置中国时区
Debbian
rm -rf /etc/localtime && \
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
echo "Asia/Shanghai" > /etc/timezone && \
apt-get -y install ntpdate && ntpdate -d cn.pool.ntp.org
CentOS 7
via http://blog.wangyan.org/linux-centos-timedatectl
imedatectl set-timezone Asia/Shanghai
timedatectl set-ntp yes
5.5 mail 发邮件
dpkg-reconfigure exim4-config
六、了解更多
关于lnmp更多信息,请访问lnmp主页。http://blog.wangyan.org/docker-lnmp
更多使用帮助请阅读wiki,其他问题欢迎在issues中反馈。