下载一个nginx镜像
docker pull nginx
运行以下
docker run --name my_nginx -d -p 8080:80 nginx
本机访问
127.0.0.1:8080
编写 dockerfile 文件
在本机创建一个空白目录,用来存放 DockerFile 文件,或者你随意找个地方放
一个简单的 dockerfile 文件填写样式
文件名 /root/dockerfile/nginx_v3
## 拉取Nginx镜像
FROM nginx
## 将 echo 后的内容写入到容器内的相应目录下的相应文件中
RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html
构建镜像
docker build -t nginx:v3 .
-f 指定文件
docker build -f /root/dockerfile/nginx_v3 -t nginx:v4 .
查看本地镜像
查看本地镜像,发现多了一个 nginx:v3 的
运行这个 nginx:v3 docker run --name nginx_v3 -d -p 8080:80 nginx:v3
详解
FROM 指定基础镜像
找到一个优秀的基础镜像,在这个镜像上面来做一些修改
有一个特殊镜像 scratch
这是一个虚拟镜像,并不实际存在,如果指定这个,就表示不以任何镜像为基础,自己写镜像的第一层
RUN 执行命令
RUN
指令是用来执行命令行命令的
-
shell
格式:RUN <命令>
, 比如RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html
就是这种格式 -
exec
格式:RUN ["可执行文件", "参数1", "参数2"]
比如:
FROM debian:stretch
RUN apt-get update
RUN apt-get install -y gcc libc6-dev make wget
RUN wget -O redis.tar.gz "http://download.redis.io/releases/redis-5.0.3.tar.gz"
RUN mkdir -p /usr/src/redis
RUN tar -xzf redis.tar.gz -C /usr/src/redis --strip-components=1
RUN make -C /usr/src/redis
RUN make -C /usr/src/redis install
构建镜像
docker build [选项] <上下文路径/URL/->
示例:docker build -t nginx:v3