linux服务器部署docker版nginx(nginx容器化)

为了服务器安全,nginx端口不直接暴漏在外,现在服务器使用了docker版nginx,记录下使用步骤,docker安装就不再叙述,之前有写

分为2种适用于服务器能上网和不能上网的情况

这里写的一个sh文件和dockerfile文件,用于docker启动后直接拉取线上仓库的nginx镜像

build_and_run.sh文件内容:

#!/bin/sh

echo "准备发布"
echo "\n"

echo "停掉旧容器..."
docker stop zw-nginx 
echo "完成\n"

echo "删除旧容器..."
docker rm zw-nginx 
echo "完成\n"

echo "删除旧镜像..."
docker image rm zw-nginx:latest
echo "完成\n"

echo "构建新镜像..."
docker build --rm -t zw-nginx:latest . -f nginx.dockerfile
echo "完成\n"

echo "启动新版本..."
docker run -d \
       --name zw-nginx \
	   -p 443:443 \
	   -p 8889:8889 \
	   -v /home/www:/home/www \
	   -v /home/nginx/conf.d:/etc/nginx/conf.d \
       --restart=always zw-nginx:latest
echo "完成\n"


其中443,8889都为nginx启动后可监听端口

nginx.dockerfile文件内容:

from nginx:latest
MAINTAINER yushoji@gmail.com
ENV TZ=Asia/Shanghai \
    DIR=/etc/nginx

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
	&& echo $TZ > /etc/timezone

WORKDIR $DIR
CMD ["nginx", "-g", "daemon off;"]

能上网的服务器直接执行build文件即可自动向仓库拉取nginx
不能上网的服务器需要先提前导入nginx镜像,导入命令:sudo docker load < nginx_latest.tar
镜像生成步骤之前已有叙述。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值