我将使用docker和nginx设置一个非常简单的html页面。
源文件可以在这里找到:
文件夹食谱01中的https://github.com/ikknd/docker-study
1.创建项目文件夹设置:
/var/www/docker-study.loc/recipe-01
-> /docker
-> /html
在“ html”文件夹中,我将创建index.html文件,该文件的内容为:“我在docker内部工作!”
在“ docker”文件夹中,我将保留与docker相关的文件和配置。
2.在“ docker”文件夹中创建nginx config site.conf:
server {
server_name myapp.loc;
root /var/www/myapp;
index index.php index.html index.htm;
access_log /var/log/nginx/front-access.log;
error_log /var/log/nginx/front- error .log;
location / {
try_files $uri $uri / /index.html? $query_string ;
}
}
3.在主机上编辑/ etc / hosts文件,并添加一条记录:
127.0.0.1 myapp.loc
4.在“ docker”文件夹中创建docker-compose.yml文件:
version: "3.7"
services:
web:
image: nginx:1.17
ports:
- 80 :80
volumes:
- /var/www/docker-study.loc/recipe-01/html:/var/www/myapp
- /var/www/docker-study.loc/recipe-01/docker/site.conf:/etc/nginx/conf.d/site.conf
我在这里做几件事:
- 将端口80从容器内部指向主机上的端口80
- 将主机上的html文件夹复制到容器内的/ var / www / myapp文件夹
- 将site.conf nginx配置文件复制到容器中的/etc/nginx/conf.d/site.conf位置
请注意,我们不仅可以将主机中的目录指向容器内部,还可以将单个文件指向。
5.转到/var/www/docker-study.loc/recipe-01/docker/并执行:
docker-compose up -d
如果现在在浏览器中尝试myapp.loc /,我将看到:“我在docker内部工作!”。
在几个简单的步骤中,我将通过nginx提供html文件,并使用本地域名与docker安装程序配合使用。
From: https://hackernoon.com/nginx-docker-how-to-get-html-page-up-with-local-domain-name-b22533nk