Преглед изворни кода

assignment2 task 3 finished

merge-requests/1/head
wangyu пре 4 година
родитељ
комит
c7f490218e
3 измењених фајлова са 41 додато и 1 уклоњено
  1. +41
    -1
      Assignment2.md
  2. BIN
      img/.DS_Store
  3. BIN
      img/assignment2/static-web.png

+ 41
- 1
Assignment2.md Прегледај датотеку

@ -211,7 +211,7 @@ $ docker run --rm prakhar1989/static-site
Nginx is running...
```
> `--rm` 参数为删除已有的container若已经存在
> `--rm` 参数的作用是当container运行结束时系统自动删除该container
#### 如果顺利的话,你的终端会出现`nginx is running...`,但是目前容器对我们来说是一个完全封闭的环境,我们并没有办法去访问`container`的端口
@ -219,3 +219,43 @@ Nginx is running...
到此为止,我们已经部署了一个静态的`nginx container`但是并没有办法去访问,`docker`提供了许多接口去解决这个问题,我们可以通过添加参数的方式将`container`的端口或者文件夹映射到本地
#### docker提供了如下一些参数
| -d | 将container置于后台运行 |
| :---------------------------: | :---------------------------------------------------: |
| -p local_port:container_port | 将container 的某个端口映射到本地 |
| -P | 将container所有正在监听的端口全部映射到本地的随机端口 |
| -v local_path:contatiner_path | 将container的某个文件路径映射到本地 |
#### `static-site`默认监听的`80`和`443`端口,我们使用上述参数尝试将它映射到本机
```bash
$ docker run -d -P --name static-site prakhar1989/static-site
e61d12292d69556eabe2a44c16cbd54486b2527e2ce4f95438e504afb7b02810
```
#### 查看docker给我们映射的端口
```
$ docker port static-site
80/tcp -> 0.0.0.0:32769
443/tcp -> 0.0.0.0:32768
```
#### 可以看到`docker`将`container`的`80`和`443`分别映射到了本机的`32769`和`32768`两个端口上
####.打开浏览器,访问`http://localhost:32769`,得到如下页面:
![static-web](img/assignment2/static-web.png)
`**************作业3:尝试使用-v、--rm和-p等参数,创建static-site容器,并以自己的学号命名,将container的/usr/share/nginx/html文件夹映射到当前目录的html文件夹,并修改index.html文件,加入自己的姓名和学号,并将上述步骤和本地目录接口截图插入实验报告中***************`
> Hint:
>
> 1.若提示continer正在运行中,可以使用`docker stop static-site && docker rm static-site`删除正在使用的容器并重新创建.
>
> 2. -v local_path请使用绝对路径
###


BIN
img/assignment2/static-web.png Прегледај датотеку

Before After
Width: 2078  |  Height: 844  |  Size: 51 KiB

Loading…
Откажи
Сачувај