前言:部署一個靜態頁網站,我們需要
- 常見映射80端口的交互式容器
- 安裝Nginx(或其他服務器)
- 安裝文本編輯器vim
- 創建靜態頁面
- 修改Ngnix的配置文件
- 運行Ngnix
- 驗證網站的防高溫
一、設置容器的端口映射
訪問網站需要開放端口,因此需要設置端口映射,docker的映射命令是:
run [-P][-p]
-P(大寫)會對容器所有暴露的端口進行映射,-p可以指定映射的端口
命令形式:
- ContainerPort(只指定容器的端口,主機的隨機映射)
docker run -p 80 -i -t ubuntu /bin/bash
- hostPort :containerport(指定宿主機和容器的端口)
docker run -p 8080:80 -i -t ubuntu /bin /bash
- ip:containerPort(容器的ip和容器的端口)
docker run -p 0.0.0.0:80 -i -t ubuntu /bin/bash
- ip:hostPort:containerPort(容器的ip 宿主機端口 容器端口)
docker run -p 0.0.0.0:8080:80 -i -t ubuntu /bin/bash
三、創建
創建docker容器 dcoker run -p 80 --name web -i-t ubuntu /bin/bash
安裝nginx apt-get install -y nginx 如果提示 unale to get list 我們sudo apt-get update更新下再安裝
安裝vim apt-get install -y nginx
創建目錄 mk dir -p var/www/html cd var/www/html 然后vim 一個index.html
查看nginx的位置 whereis nginx
查看nginx的文件的位置 ls /etc/nginx
打開default文件,修改root的位置為剛才創建網站的位置root /var/www/html;cd / 切換到根目錄,輸入nginx運行,ps -ef查看是否在運行
然后ctrl+p,ctrl+q退出容器,查看此容器
curl查看
以上是宿主主機訪問,我們docker inspect web查看容器的ip地址為
訪問成功
四、ip和端口問題
docker stop web 命令停止
docker start -i web 重新開始進入我們發現nginx沒有運行(沒有-i情況不會進入docker容器,而是在虛擬機)
此時可以在內部輸入nginx打開nginx服務器,也可以在外部docker exec web nginx啟動
查看docker top web查看容器中的進程,發現ip地址和端口都不一樣了
說明:容器重新啟動,IP地址和端口會改變