使用步骤:
- 安装vscode、docker-vscode插件、docker desktop桌面程序、docker hub账户(可选)
- 编写Dockerfile文件(下面有示例)
- 使用命令创建镜像 "docker build -t name ." (name是镜像名字,.点是指在当前目录下寻找Dockerfile文件)
- 使用命令启动容器 "docker run -dp 3000:3000 name" (name是镜像名字)
- 访问http://localhost:3000
-t | 在新容器内指定一个伪终端或终端 |
-i | 允许你对容器内的标准输入进行交互 |
-d | 后台运行 |
-p | 指定要映射的ip和端口,但是在一个指定端口上只可以绑定一个容器,格式为 hostPort:containerPort、ip:hostPort:containerPort、 ip::containerPort |
-P | docker会随机映射一个49000~49900的端口到内部容器开放的网络端口 |
-v | 绑定一个数据卷 |
Dockerfile文件示例:(我这里执行的是安装的node14、执行的npm run generate、nginx等,具体命令内容需按照你自己的项目来编写)
FROM node:14-alpine as builder
# ENV PROJECT_ENV production
ENV NODE_ENV production
WORKDIR /code
# 首次添加此两个文件,充分利用缓存
ADD package.json package-lock.json /code
RUN npm ci
ADD . /code
RUN npm run generate
# 选择更小体积的基础镜像
FROM nginx:alpine
COPY --from=builder /code/dist /usr/share/nginx/html