返回文章列表
docker-nginx
DevOps
【前言】
nginx的docker镜像较多,
本文将业务nginx封装为一个docker镜像。
【选择nginx版本】
alpine
alpine是一个精简的linux系统,对应的镜像只有7.73M,
nginx对应也有基于alpine的版本,
本文选择基于alpine的版本。
stable
nginx有稳定版和最新版,这里选择稳定版
slim
选择nginx-stable-alpine后还有slim和perl两个版本,
这里选择slim,精简版本

最终版本是:nginx:stable-alpine-slim
【dockerfile】
最终的dockerfile如下,
1.使用上面的nginx版本
2.删除该镜像内默认的启动方式
3.将自己业务nginx文件夹复制到/etc/nginx
FROM nginx:stable-alpine-slim
RUN rm -rf /docker-entrypoint.d
RUN rm -rf /etc/nginx
COPY ./nginx /etc/nginx
WORKDIR /etc/nginx
CMD ["nginx", "-g", "daemon off;"]
EXPOSE 80
【适配docker】
原来服务器nginx改为docker nginx需要修改几个点
docker启动命令
这里需要主要要映射的是80和443这里两个端口
docker run -d -p 80:80 -p 443:443 --cpus="2" --memory="200m" --restart="always" --name="insistime-nginx" registry.cn-beijing.aliyuncs.com/insistime/insistime-nginx:$version
修改ip
将所有nginx配置中的本地ip,
例如localhost,或者127.0.0.1,
修改为服务器内部ip
修改路径
修改日志路径到/var/log/nginx下
修改ssl证书路径确保容器内可以访问到