Docker部署nginx
0x00 从容器获取配置文件
docker run -d --rm --name nginx nginx
#跑一个容器停止就删除,为的是获取里面的配置文件
docker cp nginx:/etc/nginx/nginx.conf /opt/nginx/conf/nginx.conf
docker cp nginx:/etc/nginx/conf.d /opt/nginx/
#将配置文件从容器里cp到宿主机
docker stop nginx
#停止那个容器,这里即删除那个容器
0x01 部署nginx
docker run -d --name nginx --net=host -v /opt/nginx/conf.d/key:/etc/nginx/conf.d/key -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/log:/var/log/nginx nginx
0x02 使用
将html放入/opt/nginx/html目录下即可
0x03 脚本
#!/bin/sh
`docker -v > /dev/null 2>&1`
if [ $? == 0 ]
then
docker run -d --rm --name $1 nginx
mkdir -p /opt/nginx/conf
mkdir -p /opt/nginx/conf.d
docker cp nginx:/etc/nginx/nginx.conf /opt/nginx/conf/nginx.conf
docker cp nginx:/etc/nginx/conf.d /opt/nginx/
docker stop $1
docker run -d --name $1 --net=host -v /opt/nginx/conf.d/key:/etc/nginx/conf.d/key -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/log:/var/log/nginx nginx
else
echo "未安装docker"
fi