Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。
现以Dockerfile构建镜像并部署node项目为例:
1.编写Dockerfile 文件,去定制镜像
在你的linux系统的某个目录下,新建一个名为 “Dockerfile”文件,并在该文件内添加以下内容:
---------------Dockerfile start---------------
FROM node:latest
#用来指定容器的工作目录
WORKDIR /usr/src/app#将当前文件夹下的package*.json文件拷到容器的/app下,若没有则自动创建该文件目录
COPY package*.json /usr/src/app/#将当前文件夹下的server.js文件拷到容器的/app下
COPY server.js /usr/src/app/
#前提是,该文件下有package.js以及server.js文件,本指令将在docker build时运行。
RUN npm install
#暴露8081端口
EXPOSE 8081
#CMD指令在docker run 时运行,目的时运行实例时,执行指令。
CMD [ "node", "server.js" ]
---------------Dockerfile end----------------
关于CMD,类似于 RUN 指令,用于运行程序,但二者运行的时间点不同:
- CMD 在docker run 时运行。
- RUN 是在 docker build。
2.构建镜像
在 Dockerfile 文件的存放目录下,执行docker build命令来构建镜像。
指令:docker build -t myImageName .
--注:myImageName即为要取的镜像名称
3.运行实例
指令
:docker run -d --name containerName -p 宿主机端口:容器内端口 imageName
--注:宿主机端口必须是开开放的,否则用不了。
V♥公众号:"软件编程网站开发",期待一起学习,一起进步。