本次将基于Nginx的Alpine版本使用Docker配置一个简单的web服务器
Step1 创建Dockerfile
Docker镜像的构建基于基础镜像,基础镜像包括应用程序所需的依赖,例如JVM。
基础镜像被Dockerfile中的一条指令所定义,实际上整个Docker镜像都是基于Dockerfile所构建的,Dockerfile是一组描述如何部署应用的指令序列。
本例中,我们使用Nginx的Alpine版本。这提供了Linux Alpine发行版上配置的web服务器。
FROM nginx:alpine
COPY . /usr/share/nginx/html
其中./
目录下有index.html
文件
<h1>Hello World</h1>
第一行定义了基础镜像,第二行从当前目录拷贝内容到容器内的特定目录。
Step2 构建Docker镜像
Dockerfile通过Docker CLI系统的的build
命令使用。该命令执行Dockerfile中的每条指令。
构建的结果是一个可以运行你配置好应用的Docker镜像。
build
命令有很多参数,较为常见的有-t
docker build -t <build-directory>
命令允许你指定镜像的friendly-name和标签tag(通常是版本号)。
docker build -t webserver-image:v1
使用docker images
可以查看刚刚构建的镜像。
PS: 实际上在build的过程中,可以发现有2层,这个以后再说。
Step3 运行
构建时我们指定了镜像名,因此可以通过镜像名运行容器实例。
docker run -d -p 80:80 webserver-image:v1
则通过crul
可以访问nginx的网页。
在教程中,也提供了一个网址供我们访问,尽管我访问不了,不过可以试试。
https://2886795280-80-ollie02.environments.katacoda.com/