Dockerfile尝试lnmp(更新中)
参考:https://blog.51cto.com/13917261/2174203【简单的nginx】
https://blog.51cto.com/7834466/2341381【搭建lnmp】
https://blog.csdn.net/zisefeizhu/article/details/83472190【详解dockerfile】
自己先跟着一个简单的做的还是遇到了很多坑:
- 首先安装nginx,然后启动必须要有个用户
- RUN 最后的换行符是\
- mkdir -p …这边创建要加-p
- nginx访问的html文件出现乱码,要在conf那添加个charset utf-8;
- 最后我的CMD一直不执行,谁知道原来是run时候多了个/bin/bash,去掉即可
FROM centos:6.7 # 基于环境
MAINTAINER WT # 作者
ADD nginx-1.6.3.tar.gz /usr/local/src #解压包到
RUN yum -y install wget gcc gcc-c++ make openssl-devel pcre-devel vim # yum安装
RUN useradd -s /sbin/nologin nginx # 添加nginx用户,这个必须要的
RUN cd /usr/local/src/nginx-1.6.3 && \
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module && make && make install
# 下面是配置文件的复制粘贴
RUN rm -rf /usr/local/nginx/conf/nginx.conf && \
mkdir -p /usr/local/nginx/conf/vhost
COPY ./nginx.conf /usr/local/nginx/conf/nginx.conf
COPY ./test.conf /usr/local/nginx/conf/vhost/test.conf
WORKDIR /usr/local/nginx/html # 进去的目录
EXPOSE 11050
CMD ["/usr/local/nginx/sbin/nginx"] # 启动容器后执行的命令
然后cmd到我的test文件夹中执行docker build -t nginx:1.6 .
生成image然后执行
docker run -dit -p 11050:11050 -v /d/www/test:/var/www/test --name=test1 nginx:1.6
本地浏览器访问127.0.0.1:11050就好了
本文作者:蜗牛使劲冲
本文链接:https://www.cnblogs.com/warrenwt/p/18074581
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步