Logo Vincent
返回文章列表

docker-nginx

DevOps
docker-nginx

【前言】

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证书路径确保容器内可以访问到

© 2026 vincentqiao.com . 保留所有权利。