前言
公司產品人員設計的產品原型歸檔到svn,並在svn伺服器上,拉取相關的原型檔案,部署nginx服務,使其產品原型能夠通過web服務訪問得到,利於開發人員瀏覽產品原型,進行相關的開發工作
功能需求
當產品設計的原型有變更時,訪問的web服務及時更新,並記錄下產品更新的變更需求,及時告知開發人員周知,並做進一步的開發處理
部署搭建svn
docker搭建svn服務
svn伺服器上拉取產品原型,並配置自動更新,及輸入提交資訊
容器內操作(亦可在宿主機上操作,注意授予目錄、檔案的許可權)
[root@cex-svn ~]# docker exec -it cex-svn /bin/sh
/ # cd /home/svn
/ # mkdir web
/ # chown -r apache:apache web
/ # svn checkout --username username --password password .
在放置產品原型的product目錄下配置post-commit檔案,並給予執行許可權,當服務端有變更時,svn上的客戶端檔案,自動更新
/ # cd /home/svn/product/hooks
/home/svn/product/hooks # cat > post-commit <<-eof
#!/bin/sh
repos="$1"
rev="$2"
svn_path=/usr/bin/svn # svn命令執行路徑
web_path=/home/svn/web # nginx展示web目錄路徑,/home/svn目錄已做了掛載處理
log_path=/home/svn/web/svn-log.txt # svn使用者更新產品原型的記錄日誌檔案
svn_user=username
svn_pass=password
$svn_path update $web_path --username $svn_user --password $svn_pass --no-auth-cache # 更新svn客戶端命令
svn log --username $svn_user --password $svn_pass > $log_path # 記錄svn使用者更新產品原型的記錄到日誌檔案的命令
eof/home/svn/product/hooks # chmod +x post-commit
在放置產品原型的product目錄下配置pre-commit檔案,並給予執行許可權,當svn客戶端需要提交變更時,只有說明其變更原因時,才能提交到svn伺服器上,否則,不能提交
/home/svn/product/hooks # mv pre-commit.tmpl pre-commit.tmpl.bak20210304
/home/svn/product/hooks # cat > pre-commit <<-eof
#!/bin/sh
repos="$1"
txn="$2"
svnlook=/usr/bin/svnlook
logmsg=`$svnlook log -t "$txn" "$repos" | wc -m`
# 如果不輸入提交的資訊,報錯,得重新輸入資訊
if [ "$logmsg" -lt 2 ];then
echo "please state the reason for changing the requirement" >& 2
exit 1
fiexit 0
eof/home/svn/product/hooks # chmod +x pre-commit
docker-compose方式部署nginx,web訪問原型[root@cex-svn ~]# cd /data/deploy/cex-nginx
default.conf docker-compose.yml
[root@cex-svn cex-nginx]# cat > default.conf <<-eof
server
error_page 500 502 503 504 /50x.html;
location = /50x.html
}eof
[root@cex-svn cex-nginx]# cat > docker-compose.yml <<-eof
version: "3.5"
services:
cex-nginx:
image: nginx
container_name: cex-nginx
hostname: cex-nginx
ports:
- 8080:80
environment:
- set_container_timezone=true
- container_timezone=asia/shanghai
volumes:
- /usr/share/zoneinfo/asia/shanghai:/etc/localtime:ro
- /data/deploy/cex-nginx/default.conf:/etc/nginx/conf.d/default.conf
- /opt/cex-svn/repo/web:/usr/share/nginx/html
restart: always
tty: true
eof[root@cex-svn cex-nginx]# docker-compose up -d
結語 使用docker部署nginx
拉取映象 docker pull nginx 建立掛載目錄 mkdir p usr local docker nginx 編輯配置 編輯測試頁面 vi usr local docker nginx www index.html 123123 docker run dti network host p...
docker單機部署Nginx
centos 7 docker nginx 在shell中執行以下命令拉取官方nginx容器映象 docker pull docker.io nginx 如對應本地目錄下沒有 nginx.conf 和 default.conf 配置檔案將會啟動報錯,因此需要預先從已執行的nginx中將檔案複製出來置...
docker部署nginx使用https訪問
想要做的事情 使用nginx進行https訪問,若http請求直接跳轉到https上 環境 阿里雲 linux docker nginx ssl 防火牆和vpc開放80埠 遇到問題 docker 部署nginx後使用docker logs nginx檢視執行日誌為空。容器啟動成功,使用http 網域...