docker_practice/appendix/repo/nginx.md

48 lines
1.4 KiB
Markdown
Raw Normal View History

2017-11-24 02:19:15 +00:00
## [Nginx](https://store.docker.com/images/nginx/)
2016-12-10 09:00:25 +00:00
### 基本信息
2017-11-24 02:19:15 +00:00
2016-12-10 09:00:25 +00:00
[Nginx](https://en.wikipedia.org/wiki/Nginx) 是开源的高效的 Web 服务器实现,支持 HTTP、HTTPS、SMTP、POP3、IMAP 等协议。
2017-11-24 02:19:15 +00:00
该仓库位于 https://store.docker.com/images/nginx/ ,提供了 Nginx 1.0 ~ 1.13.x 各个版本的镜像。
2016-12-10 09:00:25 +00:00
### 使用方法
2017-11-24 02:19:15 +00:00
2016-12-10 09:00:25 +00:00
下面的命令将作为一个静态页面服务器启动。
2017-11-22 03:13:23 +00:00
```bash
2016-12-10 09:00:25 +00:00
$ docker run --name some-nginx -v /some/content:/usr/share/nginx/html:ro -d nginx
```
2017-11-24 02:19:15 +00:00
2016-12-10 09:00:25 +00:00
用户也可以不使用这种映射方式,通过利用 Dockerfile 来直接将静态页面内容放到镜像中,内容为
2017-11-22 03:13:23 +00:00
```bash
2016-12-10 09:00:25 +00:00
FROM nginx
COPY static-html-directory /usr/share/nginx/html
```
2017-11-24 02:19:15 +00:00
2016-12-10 09:00:25 +00:00
之后生成新的镜像,并启动一个容器。
2017-11-22 03:13:23 +00:00
```bash
2016-12-10 09:00:25 +00:00
$ docker build -t some-content-nginx .
$ docker run --name some-nginx -d some-content-nginx
```
2017-11-24 02:19:15 +00:00
2016-12-10 09:00:25 +00:00
开放端口,并映射到本地的 `8080` 端口。
2017-11-22 03:13:23 +00:00
```bash
2016-12-10 09:00:25 +00:00
docker run --name some-nginx -d -p 8080:80 some-content-nginx
```
Nginx的默认配置文件路径为 `/etc/nginx/nginx.conf`,可以通过映射它来使用本地的配置文件,例如
2017-11-22 03:13:23 +00:00
```bash
2016-12-10 09:00:25 +00:00
docker run --name some-nginx -v /some/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx
```
2017-11-24 02:19:15 +00:00
2016-12-10 09:00:25 +00:00
使用配置文件时,为了在容器中正常运行,需要保持 `daemon off;`
### Dockerfile
2017-10-31 16:36:57 +00:00
请到 https://github.com/docker-library/docs/tree/master/nginx 查看。