Sign inSign up

anacha/nginx

By anacha

•Updated about 7 years ago

Image
0

456

anacha/nginx repository overview

⁠Nginx

⁠โครงสร้างหลัก

/etc/ssl/certs/
/etc/nginx/config.conf ---------------------------> <default main configuration file>
/var/nginx/
  |-- config/
  |   |-- nginx.pre-ssl.conf ---------------------> <use for setting letsencrypt>
  |   |-- conf.d/
  |       |-- th.ac.er.www.config ----------------> vhost server block config file
  |       `-- th.ac.er.test.config
  |   |-- ssl/
  |       |-- dhparam.pem
  |       `-- snippets/
  |           |-- ssl-params.conf
  |           |-- ssl-th.ac.er.test.conf
  `-- html/
      |-- th.ac.er.www <default>
      |-- th.ac.er.test <others> -----------------> <plug-in vhost>
      `-- th.ac.er.test_app1 <virtual path> ------> <plug-in vhost>

ถ้าเข้าใช้งานครั้งแรกต้อง login เข้า docker registry ก่อน

docker login registry.er.co.th:443

⁠First installation

ติดตั้งไฟล์ลงบน host

mkdir -p /var/nginx/ && \
mkdir -p /etc/ssl/certs/ && \
mkdir -p /etc/letsencrypt/webconfig/ && \
mkdir -p /etc/letsencrypt/webrootauth/ && \

docker pull registry.er.co.th:443/ops/nginx-webserver:latest && \
docker run -it --rm \
       --volume /var/nginx:/var/nginx:rw \
       --volume /etc/letsencrypt:/etc/letsencrypt:rw \
       registry.er.co.th:443/ops/nginx-webserver:latest \
       /nginx-src/nginx-tools/install.sh
docker pull registry.er.co.th:443/ops/nginx-webserver:latest && \
docker run -d \
       --restart always \
       --name nginx-webserver \
       --publish 80:80 \
       --publish 443:443 \
       --volume /var/log/nginx:/var/log/nginx:rw \
       --volume /var/nginx:/var/nginx:ro \
       --volume /etc/letsencrypt:/etc/letsencrypt:ro \
       --volume /etc/ssl/certs/dhparam.pem:/etc/ssl/certs/dhparam.pem:ro \
       registry.er.co.th:443/ops/nginx-webserver:latest

หากมีการติดตั้ง plug-in vhost หลักจากนี้
ให้สั่ง gzip สำหรับ gzip_static on และ nginx reload configuration ใหม่

#docker exec -it webserver /nginx-src/nginx-tools/gzip_static.sh
docker exec -it nginx-webserver nginx -s reload
⁠ลบไฟล์
docker run -it --rm \
       --volume /var/nginx:/var/nginx:rw \
       --volume /etc/letsencrypt:/etc/letsencrypt:rw \
       registry.er.co.th:443/ops/nginx-webserver:latest \
       /nginx-src/nginx-tools/uninstall.sh
⁠One-Shot command
$(docker pull registry.er.co.th:443/ops/nginx-webserver:latest | grep -q 'Image is up to date') || \
(echo "must reinstall new version." && \
docker run -it --rm \
       --volume /var/nginx:/var/nginx:rw \
       --volume /etc/letsencrypt:/etc/letsencrypt:rw \
       registry.er.co.th:443/ops/nginx-webserver:latest \
       /nginx-src/nginx-tools/reinstall.sh && \
echo "docker stop nginx-webserver" && \
docker stop nginx-webserver && \
echo "docker rm nginx-webserver" && \
docker rm nginx-webserver && \
docker run -d \
       --restart always \
       --name nginx-webserver \
       --publish 80:80 \
       --publish 443:443 \
       --volume /var/nginx:/var/nginx:ro \
       --volume /etc/letsencrypt:/etc/letsencrypt:ro \
       --volume /etc/ssl/certs/dhparam.pem:/etc/ssl/certs/dhparam.pem:ro \
       registry.er.co.th:443/ops/nginx-webserver:latest
)

Tag summary

Content type

Image

Digest

Size

3.6 MB

Last updated

about 7 years ago

docker pull anacha/nginx