中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

docker nginx如何部署多個項目

發布時間:2022-03-24 17:36:13 來源:億速云 閱讀:814 作者:iii 欄目:web開發

今天小編給大家分享一下docker nginx如何部署多個項目的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

前提條件

1、本地電腦和服務器已安裝 docker,下載方法自行谷歌吧

2、在 docker hub 上已有賬號, 注冊傳送門:

3、需要對 docker 已有所熟悉 ,并了解dockerfile里的一些指令

使用dockerfile 制作鏡像

假如本機有一個叫web的項目

在web根目錄下新建dockerfile,寫入以下內容

from nginx:1.13.6-alpine
label maintainer="lilywang <lilywang.cd@gmail.com>"

arg tz="asia/shanghai"

env tz ${tz}

run apk upgrade --update \
 && apk add bash tzdata \
 && ln -sf /usr/share/zoneinfo/${tz} /etc/localtime \
 && echo ${tz} > /etc/timezone \
 && rm -rf /var/cache/apk/*

copy dist /usr/share/nginx/html 

cmd ["nginx", "-g", "daemon off;"]

此時web里的文件結構為:

.
|____dockerfile
|____dist // 為項目打包后的文件
| |____index.html

接下來在bash 進入到web目錄

cd web

docker build -t lilywang711/web .

看到打印信息中有如下就說明鏡像已經構建成功了

successfully built 4c050212ce0d
successfully tagged lilywang711/web:latest

也可以輸入docker images 查看當前的鏡像列表

接下來輸入命令 docker push lilywang711/web 就可將剛才構建好的鏡像上傳到docker hub里面,方便等會兒我們在服務端拉取鏡像

如果是有多個項目需要部署,那就按照以上步驟重復來就行,有多少個項目就構建多少個鏡像

服務端部署

ssh 登陸服務器,在當前用戶目錄下(我是root目錄),新建 nginx 文件夾,并在里面新建nginx.conf
在 nginx.conf 中寫入以下內容

user nginx;
worker_processes 2;
error_log /var/log/nginx/error.log warn;
pid  /var/run/nginx.pid;
events {
 use epoll;
 worker_connections 2048;
}
http {
 include /etc/nginx/mime.types;
 # include /etc/nginx/conf.d/*.conf;
 root /usr/share/nginx/html;
 index index.html index.htm;
 server {
  listen 80;
  server_name a.yourdomain.cn;
  location / {
  }
 }
 server {
  listen 80;
  server_name b.yourdomain.cn;
  location / {
   proxy_pass http://your_vps_ip:81;
  }
 }
 server {
  listen 80;
  server_name localhost;
  location / {
  }
 }
}

接下來

啟動docker systemctl start docker

拉取剛才制作并上傳好的兩個鏡像

docker pull lilywang711/web

docker pull lilywang711/web1

輸入以下命令啟動容器

docker run -itd --name web -p 80:80 -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf lilywang711/web
// -i 交互模式運行容器, -t 為容器分配一個偽終端,-d 后臺運行容器,可直接連寫 -itd
// --name 是給該容器起個叫web的名字,方便辨識
// -p 是綁定端口 本機端口80:容器端口80
// -v 聲明volume,意思是將容器中的/etc/nginx/nginx.conf 掛載到 宿主機里的/root/nginx/nginx.conf,以后配置nginx只需要修改/root/nginx/nginx.conf就行了

另外一個lilywang711/web1鏡像也同理,修改下端口和名字就好了

docker run -itd --name web1 -p 81:80 -v /root/nginx/nginx.conf:/etc/nginx/nginx.conf lilywang711/web1

此時輸入 docker ps 就可以看到這兩個容器已經跑起來了

docker化項目并在nginx部署就已經完成了

在瀏覽器輸入 http://a.yourdomain.cn 和 http://b.yourdomain.cn 就可以看到效果了,分別對應本地電腦中的web 和 web1 項目

docker nginx如何部署多個項目

docker nginx如何部署多個項目

以上就是“docker nginx如何部署多個項目”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

古蔺县| 双柏县| 新竹市| 平昌县| 罗江县| 新郑市| 抚州市| 中卫市| 安岳县| 宝清县| 水城县| 开原市| 永顺县| 天水市| 郓城县| 嘉义市| 天津市| 合肥市| 镇远县| 洪雅县| 玉门市| 旬阳县| 女性| 文水县| 青冈县| 新田县| 天峨县| 英山县| 襄城县| 乌兰察布市| 上栗县| 沁源县| 阿拉善右旗| 德安县| 康保县| 宾阳县| 南召县| 堆龙德庆县| 巫山县| 清水河县| 宜州市|