sh run-docker-nginx.sh

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sh run-docker-nginx.sh相关的知识,希望对你有一定的参考价值。

#!/bin/sh

# see: https://github.com/docker-library/docs/tree/master/nginx

# config
CONTAINER=nginx0
PORT=8888
IMAGE=nginx
DOCKER=docker

# ensure the nginx image exists
if [ -z "$(${DOCKER} images -q ${IMAGE} 2> /dev/null)" ] ;then
  ${DOCKER} pull ${IMAGE}
fi

# ensure the nginx.conf exists
if [ ! -f nginx.conf ] ;then
  TEMP_CONTAINER=TEMP_NGINX
  ${DOCKER} run \
            --name ${TEMP_CONTAINER} \
            -d \
            ${IMAGE}
  ${DOCKER} cp ${TEMP_CONTAINER}:/etc/nginx/nginx.conf nginx.conf
  ${DOCKER} stop ${TEMP_CONTAINER}
  ${DOCKER} rm ${TEMP_CONTAINER}
fi

# create and run the container
if [ -z "$(${DOCKER} ps -a -q -f name=${CONTAINER} 2> /dev/null)" ] ;then
  mkdir -p docroot
  ${DOCKER} run \
            --name ${CONTAINER} \
            -v $(pwd)/docroot:/usr/share/nginx/html:ro \
            -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf:ro \
            -p ${PORT}:80 \
            -d \
            ${IMAGE}
fi

# ensure the container is running
if [ "$(${DOCKER} inspect -f '{{.State.Running}}' ${CONTAINER} 2> /dev/null)" != "true" ] ;then
  ${DOCKER} start ${CONTAINER}
fi

以上是关于sh run-docker-nginx.sh的主要内容,如果未能解决你的问题,请参考以下文章

如何使我的命令行在具有扩展名(.sh)和名称如“weird.sh.sh.sh”的文件上工作

sh sh_template.sh

sh sh.sh

Linux下面如何运行 SH文件

配置告警系统主脚本main.sh mon.sh load.sh 502.sh disk.sh

shell 脚本各种执行方式(source ./*.sh, . ./*.sh, ./*.sh)的区别