一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

云服務(wù)器|WEB服務(wù)器|FTP服務(wù)器|郵件服務(wù)器|虛擬主機(jī)|服務(wù)器安全|DNS服務(wù)器|服務(wù)器知識|Nginx|IIS|Tomcat|

服務(wù)器之家 - 服務(wù)器技術(shù) - 服務(wù)器知識 - 在Docker容器中部署靜態(tài)網(wǎng)頁的方法教程

在Docker容器中部署靜態(tài)網(wǎng)頁的方法教程

2021-01-27 17:56興國First 服務(wù)器知識

這篇文章主要給大家介紹了在Docker容器中部署靜態(tài)網(wǎng)頁的方法教程,文中介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。

前言

一般我們在訪問容器時需要通過容器的端口來訪問,那如何設(shè)置容器的端口映射呢?

我們通過以下命令來設(shè)置:

?
1
docker run -p ip:hostport:containerport [--name] [-i] [-t] 鏡像名 [command][arg...]
  • ip:表示宿主機(jī)ip
  • hostport:宿主機(jī)端口號
  • containerport:容器端口號

設(shè)置的方式有以下幾種:

containerport,指定容器端口號,宿主機(jī)端口隨機(jī)生成

?
1
[root@localhost ~]# docker run -p 80 --name web_test -i -t 80864d42dd23  hub.c.163.com/library/ubuntu /bin/bash

hostport:containerport映射主機(jī)端口和容器端口

?
1
[root@localhost ~]# docker run -p 8080:80 --name web_test -i -t 80864d42dd23  hub.c.163.com/library/ubuntu /bin/bash

ip::containerport設(shè)置主機(jī)的隨機(jī)端口到容器端口

?
1
[root@localhost ~]# docker run -p 0.0.0.0::80 --name web_test -i -t 80864d42dd23  hub.c.163.com/library/ubuntu /bin/bash

ip:hostport:containerport映射指定地址的指定端口到容器的指定端口

?
1
[root@localhost ~]# docker run -p 0.0.0.0:8080:80 --name web_test -i -t 80864d42dd23  hub.c.163.com/library/ubuntu /bin/bash

下面通過nginx在容器部署靜態(tài)網(wǎng)頁,通過以下步驟

      - 創(chuàng)建80映射端口的交互式容器

      - 安裝nginx

      - 安裝文本編輯器vim

      - 創(chuàng)建靜態(tài)網(wǎng)頁

      - 運(yùn)行nginx

      - 驗證網(wǎng)頁

示例如下(如果安裝完ubuntu后不能安裝nginx進(jìn)行apt-get update):

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@localhost ~]# docker run -p 80 --name static_test -i -t hub.c.163.com/library/ubuntu /bin/bash
root@25fcbf6e953d:/# apt-get install -y nginx
reading package lists... done
building dependency tree 
reading state information... done
e: unable to locate package nginx
root@25fcbf6e953d:/# apt-get update  
get:1 http://archive.ubuntu.com/ubuntu xenial inrelease [247 kb]
get:2 http://archive.ubuntu.com/ubuntu xenial-updates inrelease [102 kb]
**中間日志省略。。。。。。。。。。**                  
fetched 24.9 mb in 9s (2717 kb/s)                                
reading package lists... done
root@25fcbf6e953d:/# apt-get install -y nginx
reading package lists... done
building dependency tree 
reading state information... done
**安裝日志省略。。。。。。。。。。**

然后安裝vim:

?
1
2
3
4
5
6
root@25fcbf6e953d:/# apt-get install -y vim
reading package lists... done
building dependency tree 
reading state information... done
the following additional packages will be installed:
**安裝日志省略。。。。。。。。。。**

然后建立存放靜態(tài)文件的目錄,并創(chuàng)建一個簡單的html文件:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
root@25fcbf6e953d:/# mkdir -p /var/www/html
root@25fcbf6e953d:/#
root@25fcbf6e953d:/# cd /var/www/html/
root@25fcbf6e953d:/var/www/html# vim index.html
root@25fcbf6e953d:/var/www/html# ll
total 8
drwxr-xr-x. 2 root root 53 mar 13 05:02 ./
drwxr-xr-x. 3 root root 17 mar 13 04:50 ../
-rw-r--r--. 1 root root 79 mar 13 05:02 index.html
-rw-r--r--. 1 root root 612 mar 13 04:51 index.nginx-debian.html
root@25fcbf6e953d:/var/www/html# cat index.html
<html>
<body>
<h1>
  this is the first docker static file
</h1>
</body>
</html>
root@25fcbf6e953d:/var/www/html#

找到nginx的安裝目錄,更改default的root值為剛才創(chuàng)建的目錄:

?
1
2
3
4
5
6
7
8
9
root@25fcbf6e953d:/var/www/html# whereis nginx
nginx: /usr/sbin/nginx /etc/nginx /usr/share/nginx
root@25fcbf6e953d:/var/www/html# cd /etc/nginx/sites-enabled/
root@25fcbf6e953d:/etc/nginx/sites-enabled# ll
total 4
drwxr-xr-x. 2 root root 20 mar 13 04:51 ./
drwxr-xr-x. 6 root root 4096 mar 13 04:51 ../
lrwxrwxrwx. 1 root root 34 mar 13 04:51 default -> /etc/nginx/sites-available/default
root@25fcbf6e953d:/etc/nginx/sites-enabled# vim default

在Docker容器中部署靜態(tài)網(wǎng)頁的方法教程

然后啟動nginx,查看容器進(jìn)程:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
root@25fcbf6e953d:/etc/nginx/sites-enabled# nginx
root@25fcbf6e953d:/etc/nginx/sites-enabled# ps -ef
uid  pid ppid c stime tty   time cmd
root   1  0 0 04:48 ?  00:00:00 /bin/bash
root  827  1 0 05:06 ?  00:00:00 nginx: master process nginx
www-data 828 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 829 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 830 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 831 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 832 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 833 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 834 827 0 05:06 ?  00:00:00 nginx: worker process
www-data 835 827 0 05:06 ?  00:00:00 nginx: worker process
root  836  1 0 05:07 ?  00:00:00 ps -ef
root@25fcbf6e953d:/etc/nginx/sites-enabled#

然后按ctrl+p,ctrl+q退出交互式容器。

使用docker ps查看容器的端口和運(yùn)行情況,也可以通過dcoker port 鏡像名查看:

?
1
2
3
4
5
6
root@localhost ~]# docker ps
container id  image       command     created    status    ports     names
25fcbf6e953d  hub.c.163.com/library/ubuntu "/bin/bash"    18 minutes ago  up 18 minutes  0.0.0.0:32772->80/tcp static_test
[root@localhost ~]# docker port static_test
80/tcp -> 0.0.0.0:32772
[root@localhost ~]#

可以看到容器的80端口映射到注解的32772端口。

通過curl訪問創(chuàng)建的index.html文件:

?
1
2
3
4
5
6
7
8
9
[root@localhost ~]# curl http://127.0.0.1:32772/index.html
<html>
<body>
<h1>
  this is the first docker static file
</h1>
</body>
</html>
[root@localhost ~]#

也可以通過docker inspect 容器名來查看容器的詳細(xì)信息和ip

通過容器ip進(jìn)行訪問:

?
1
2
3
[root@localhost ~]# docker inspect static_test
其他信息省略
"ipaddress": "172.17.0.5",
?
1
2
3
4
5
6
7
8
9
[root@localhost ~]# curl http://172.17.0.5/index.html
<html>
<body>
<h1>
  this is the first docker static file
</h1>
</body>
</html>
[root@localhost ~]#

當(dāng)我們使用docker stop 容器名停止這個容器后,再使用docker start 容器名啟動容器后,里面的nginx并沒有啟動。那么我們使用docker exec 容器名 nginx來啟動:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
[root@localhost ~]# docker stop static_test
static_test
[root@localhost ~]# docker ps
container id  image       command     created    status    ports     names
b4f32bbe4a34  hub.c.163.com/library/ubuntu "/bin/bash"    41 hours ago  up 41 hours         loving_brattain
d75a2d8c7822  xingguo/df_test1    "nginx -g 'daemon off" 2 days ago   up 2 days   0.0.0.0:32770->80/tcp df_nginx_web
959c0fc5d903  xingguo/commit_test1   "nginx -g 'daemon off" 2 days ago   up 2 days   0.0.0.0:32769->80/tcp nginx_test
[root@localhost ~]# docker start static_test
static_test
[root@localhost ~]# docker ps
container id  image       command     created    status    ports     names
25fcbf6e953d  hub.c.163.com/library/ubuntu "/bin/bash"    29 minutes ago  up 2 seconds  0.0.0.0:32773->80/tcp static_test
b4f32bbe4a34  hub.c.163.com/library/ubuntu "/bin/bash"    41 hours ago  up 41 hours         loving_brattain
d75a2d8c7822  xingguo/df_test1    "nginx -g 'daemon off" 2 days ago   up 2 days   0.0.0.0:32770->80/tcp df_nginx_web
959c0fc5d903  xingguo/commit_test1   "nginx -g 'daemon off" 2 days ago   up 2 days   0.0.0.0:32769->80/tcp nginx_test
[root@localhost ~]# docker top static_test
uid     pid     ppid    c     stime    tty     time    cmd
root    4719    4702    0     13:17    pts/2    00:00:00   /bin/bash
[root@localhost ~]# docker exec static_test nginx
[root@localhost ~]# docker top static_test
uid     pid     ppid    c     stime    tty     time    cmd
root    4719    4702    0     13:17    pts/2    00:00:00   /bin/bash
root    4800    1     0     13:18    ?     00:00:00   nginx: master process nginx
amandab+   4801    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4802    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4803    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4804    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4805    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4806    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4807    4800    0     13:18    ?     00:00:00   nginx: worker process
amandab+   4808    4800    0     13:18    ?     00:00:00   nginx: worker process
[root@localhost ~]#

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如有疑問大家可以留言交流,謝謝大家對服務(wù)器之家的支持。

原文鏈接:http://blog.csdn.net/u014231523/article/details/61916145

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 好骚好紧 | gay男强壮军人chinese | 图片专区亚洲欧美另类 | 91次元成年破解版 | 91精品国产免费久久 | 91亚洲视频在线观看 | 国产情侣露脸自拍 | 草草线在成年免费视频网站 | 精品91自产拍在线观看99re | 亚洲欧美日韩中文高清一 | 国内精品久久久久久中文字幕 | 污小说在线阅读 | 色综合久久天天综合 | 国产小视频在线免费观看 | 日韩国产欧美成人一区二区影院 | 久久久久久久伊人电影 | 国产精品高清一区二区三区 | 欧美成人手机 | 久久久亚洲国产精品主播 | 免费二区 | 日本特黄一级大片 | 欧美亚洲视频在线观看 | 国产99视频精品免费视频免里 | 17个农民工婉莹第一部 | 色欲都市 | 亚洲国产精品一在线观看 | 日韩欧美一区二区在线 | 色中文字幕 | 国产麻豆91欧美一区二区 | 91制片厂制作传媒网站破解 | 日韩黄色影视 | 扒开老师两片湿漉的肉 | 欧美操屁股| 桃乃木香奈作品在线观看 | 星星动漫在线观看免费 | 97影视| 99精品久久精品一区二区 | 色悠久久久久综合欧美99 | 久久er99热精品一区二区 | 免费午夜影院 | 日本大片免a费观看在线 |