6 在docker中部署靜態網站
阿新 • • 發佈:2019-01-10
1.介紹
設定容器的埠對映 -P -p
在docker中部署靜態網站,要設定容器的埠對映
run [-P] [-p]
-P --publish-all=true | false 預設為false,將為容器暴露的所有埠進行對映,埠對映命令如下:
docker run -P -i -t ubuntu /bin/bash
-p --publish=[] 可以指定對映哪些容器的埠
-p 指定容器對映埠的格式有四種:
(1)containerPort:80 指定容器的埠
docker run -p 80 -i -t ubuntu /bin/bash
(2)hostPort:containerPort 同時指定了宿主機的埠和容器的埠
docker run -p 8000:80 -i -t ubuntu /bin/bash
(3)ip::containerPort 指定ip和容器的埠
docker run -p 0.0.0.0:80 -i -t ubuntu /bin/bash
(4)ip:hostPort:containerPort 指定了ip、宿主機埠和容器埠
docker run -p 0.0.0.0:8000:80 -i -t ubuntu /bin/bash
2.部署Nginx步驟:
(1)建立對映80埠的互動式容器
docker run -p 80 --name staticweb -it ubuntu /bin/bash
(2)安裝Nginx
apt-get update
apt-get install -y nginx
(3)安裝文字編輯器vim
apt-get install -y vim
(4)建立靜態頁面
mkdir -p /var/www/html
cd /var/www/html
vim index.html
輸入下面內容:
(5)修改Nginx配置檔案
#檢視nginx安裝位置 whereis nginx #檢視nginx配置檔案的位置 ls /etc/nginx ls /etc/nginx/sites-enabled
開啟default,將server中root的值改為剛建立的靜態網站的位置
vim /etc/nginx/sites-enabled/default
(6)執行Nginx
cd /
#啟動nginx
nginx
#檢視程序
ps -ef
#保持後臺執行
Ctrl + P Ctrl + Q
檢視埠對映
(7)驗證網站訪問,可以看到網站成功返回了編輯的頁面
也可以在瀏覽器中訪問頁面
剛才使用宿主機的ip來訪問,也可以使用容器的ip訪問
docker inspect staticweb
不用再指定埠號了,因為預設的80埠就可以訪問,在瀏覽器中也是一樣的
注意:停止一個容器並重新啟動時,原來分配的ip地址和埠對映都會發生改變。