docker-lnp 是一个封装了 Nginx+php7-fpm 以及多数常用的 php 扩展的 Dockerfile 仓库,旨在快速构建基于 Docker 的 LNMP 环境!
1,自定义 Nginx, PHP-FPM, PHP 相关配置文件,完全定制
2,Docker 内采用 supervisor 管理 Nginx,FPM 进程,方便内部重启调试,统一管理
3,直接在 Dockerfile 中通过 RUN 命令执行 shell 命令来控制系统设置
4,通过 docker-compose 控制整个容器环境,可深度定制
5,Nginx采用官方stable-alpine稳定版,容器体积小且稳定
6,PHP版本跟随清华镜像源,升级更方便
7,代码简单,通俗易懂,流程清晰
Alpine: 3.5
PHP: 7.1
Nginx: 1.12.1
Docker-compose: 3
step1 构建镜像
cd <docker-lnp dir> sudo docker-compose build
这里可能得需要一段时间,因为需要下载一些需要的包
step2 查看镜像
sudo docker images
如果没有错的话,上面的命令会显示出来刚刚构建好的镜像
step3 运行镜像
sudo docker-compose up -d
-d 指定后台运行,也可以省略,则容器运行在前台
step4 测试
sudo docker ps sudo docker inspect <container_id>
通过上面的命令找到映射IP,然后在本地通过IP或配置hosts文件来访问,注意代码位置需要通过Dockerfile中的卷映射出来
step5 调试,如果需要的话
sudo docker ps sudo docker exec -it <container_id> bash
容器内部的Alpine linux系统提供一个bash环境,可进入到系统内部方便调试环境,重启则可通过 supervisorctl
该仓库的Dockerfile仅封装了Nginx和FPM,不包含Mysql
建议通过 docker-compose 来定义容器环境
该仓库提供的 docker-compose.yml 中定义了容器链接 Mysql 的方式,如有需要请参考
简单粗暴点吧 jenkins 镜像下载:docker pull jenkins:alpine dockfile 原地址:https://gist.github.com/phith0n/373cc078a8b25a20432408d5d7556770 php5.dockerfileFROM alpine:3.3 MAINTAINERDidiet Noor (@lynxluna) # Patch AP
说明 Docker下搭建lnp环境 本案例下web环境只安装了NGINX+PHP,MySQL推荐使用单独服务器维护 问题:该方式PHP安装某些扩展(比如gd)会有很多问题 环境信息 系统:CentOS7.6 软件:docker 20.10.11 镜像:nginx:1.21,php:7.4-fpm CentOS7下安装Docker 》设置仓库,安装所需软件包 [root@192 ~]# yum in
仓库镜像 Docker hub官方已提供容器镜像registry,用于搭建私有仓库 拉取镜像: #docker pull daocloud.io/library/registry:latest 运行容器: #docker run --restart=always -d -p 5000:5000 daocloud.io/library/registry 注:如果创建容器不成功,报错防火墙,解决方案如
外部网络访问容器 在启动容器时,如果不指定对应参数,在容器外部是无法通过网络来访问容器内的网络应用和服务的。 当容器中运行一些网络应用,要让外部访问这些应用时,可以通过-P或-p参数来指定端口映射。当使用-P标记时,Docker会随机映射一个49000~49900的端口至容器内部开放的网络端口。 首先使用centos镜像新建一个容器,然后在该容器中安装httpd服务并启动 [root@localh
运行环境Centos7 Docker 18.06.3-ce docker-compose 1.27.4 问题描述 Docker 运行 mysql 容器成功后,无法连接到容器内的mysql服务,telnet 也不通。 容器状态启动容器docker run --name mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d wangyongdong/
建立私有仓库的目的主要是:自己或公司用,下载快,不用去国外下载了。方便 仓库镜像 Docker hub官方已提供容器镜像registry,用于搭建私有仓库 #docker imagers #查看一下自己有哪些镜像 1.拉取镜像: # docker pull daocloud.io/library/registry:latest 2.运行容器: # docker run -
我在设置多docker容器环境时遇到问题。这个想法相当标准: 一个容器运行php fpm 我的phpfpm Docker文件非常简单: Nginx更是如此: 其中文件夹中有一个文件 还有docker-compose.yml 这种精确的设置在AWS Elastic Beanstalk上非常有效。但是,在我的本地docker上,我遇到了如下错误: 2016/11/17 09:55:36[错误] 6#6
我想做一个完全dockerizedDrupal安装。我的第一步是让容器运行Nginx和php5-fpm,两者都是基于Debian的。我在CoreOS alpha频道(使用数字海洋) 我的DockerFile如下所示: Nginx: 这个容器构建并运行良好。我在我的服务器ip上看到默认的Nginx页面。 php5-fpm: 这个容器也没有任何问题,并且在启动时保持运行。 我首先使用以下命令启动php
主要内容:1. Nginx安装配置,2. PHP7安装配置,2.1 源码下载,2.4. 修改配置,3. Nginx代理集成PHP7配置在前面几篇文章中,我们已经介绍并演示安装 Nginx 的几种方式,在开始本篇文章的阅读和实践之前,建议先阅读“Nginx安装配置”:http://www.yiibai.com/nginx/nginx-install.html ,在上面文章的基础之上,我们再添加 PHP7 的安装配置。 1. Nginx安装配置 如果需要一些特殊的功能,在包和端口不可用的情况下,也可
Nginx 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务 。 1、查看可用的 Nginx 版本 访问 Nginx 镜像库地址: https://hub.docker.com/_/nginx?tab=tags。 可以通过 Sort by 查看其他版本的 Nginx,默认是最新版本 nginx:latest。 你也可以在下拉列表中找到其他你想要
为了版本控制和安全,我想将两个Dockerfile合并为一个,然后为. sock=创建一个目录 第一个Dockerfile一半 第二个Dockerfiel代码是这个PHP代码的一半,相应的文件比这个代码高一级。我不会公开9000端口并注释掉CMD。所有这些都通过supervisord进行管理。 我在docker compose的帮助下构建了它 当我这样运行它时,设置php和nginx conf来使
运行Nginx 1.17的Digital Ocean Ubuntu18.04 VPS。10 PHP-FPM7.3。我不知道如何正确运行PHP文件(其他一切都正常运行)php文件生成Nginx的404未找到页面。Nginx错误日志仅显示“信号处理已启动”每次更改后,我都会重新启动nginx fpm。我已经研究了几乎所有与此相关的StackOverflow问题,并尝试了各种不同的配置。如果您能提供任何