2020年6月30日 星期二

docker nginx 時間不同步

docker nginx 時間不同步
通常nginx上時區的設定只需要加上
autoindex_localtime on;
即可使用到local的timezone
但在container內是無效的
需要讓container與host也就是安裝docker本身的主機環境時間同步
可以在啟動時加上
v /etc/localtime:/etc/localtime:ro
完整的啟動指令範例如下
docker run --name=mynginx -d 
-v /etc/localtime:/etc/localtime:ro 
-v ~/myhtmlfolder:/usr/share/nginx/html 
-v ~/docker_share/nginx/conf:/etc/nginx/conf.d
-v ~/docker_share/nginx/nginx.conf:/etc/nginx/nginx.conf:ro 
-v ~/docker_share/nginx/logs:/var/log/nginx 
-p 80:80 nginx

mac上時區設定localtime無效須改用時區設定

docker run --name=mynginx -d 
-e "TZ=Asia/Taipei" 
-v ~/docker_share/nginx/nginx.conf:/etc/nginx/nginx.conf:ro 
-v ~/bcc:/usr/share/nginx/html 
-v ~/docker_share/nginx/conf:/etc/nginx/conf.d
-v ~/docker_share/nginx/nginx.conf:/etc/nginx/nginx.conf:ro
-v ~/docker_share/nginx/logs:/var/log/nginx -p 80:80 nginx

沒有留言: