Git Product home page Git Product logo

docker-lnmp's Introduction

Docker LNMP

Docker-LNMP 可以构建出基于 Docker 的 PHP 开发环境,其优势有在短时间内随意构建不同版本的相关服务、环境统一分布在不同服务器等,使开发者能够更专注于开发业务本身。

# 当前版本   :1.0
# 默认服务   :PHP-FPM 7.1、PHP-FPM 5.6、Nginx 1.12.1、mysql 5.6、redis 3.0、MongoDB Latest

# 目录结构
    /docker-lnmp
        /build                  镜像构建目录
        /work                   持久化目录,包括 php 脚本、相关服务配置文件、数据库数据等
        /.env-example           配置文件
        /docker-compose.yml     compose 配置文件

安装

没有安装 Docker 的同学移步 安装教程

cd ~/
git clone https://github.com/beautysoft/docker-lnmp.git

cd docker-lnmp
mv .env-example .env

# 如果当前目录不在 ~/ 修改 .env 文件,默认会构建所有服务,MySQL root 初始密码:DockerLNMP
sudo docker-compose up --build -d

启动成功访问 localhost 出现安装成功页面

常用操作命令

# 查看当前启动的容器
sudo docker ps

# 启动部分服务在后边加服务名,不加表示启动所有,-d 表示在后台运行
sudo docker-compose up [nginx|php71|php56|mysql|redis|mongo] -d

# 停止和启动类似
sudo docker-compose stop [nginx|php71|php56|mysql|redis|mongo]

修改镜像文件怎么处理?

# 比如在 php 里新增一个扩展
# 1、更改对应的 docker-lnmp/build/php71/dockerfile
# 2、重新构建镜像
sudo docker-compose build [php71|...]

如何设置开机启动服务?

# 编辑开机启动文件,写入  cd /home/your/docker-lnmp && compose up -d
# 注意这里不用 sudo,本身是使用 root 运行的
# 另外 docker-lnmp 如果不在 /root/ 下,需要编辑 .env 里 APP_PATH 设置绝对路径
sudo vim /etc/rc.local

# 重启测试
sudo reboot

安装 Docker 及相关工具

1、安装 docker 参考 daocloud 提供的文档

# 注意按照文档如果执行类似 install docker-ce=17.03.1* 出错,执行 install docker-ce 即可
https://download.daocloud.io/Docker_Mirror/Docker

2、安装 docker-compose

# 注意:你如果用的是非 root 用户,执行 curl 会提示没权限写入 /usr/local/bin 目录,可以先写入当前目录,再使用 sudo mv 过去
curl -L https://get.daocloud.io/docker/compose/releases/download/1.12.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

3、启动 Docker

sudo service docker start
sudo docker info    

4、配置 DockerHub 加速器(这简直是一定的)

# 阿里云加速器
# 每个人有对应的加速地址,访问 `https://dev.aliyun.com` ->【管理中心】-> 【DockerHub 镜像站点】配置加速器

# DaoCloud 加速器
# http://guide.daocloud.io/dcs/daocloud-9153151.html

# 腾讯云加速器
# https://www.qcloud.com/document/product/457/7207

License

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.