docker部署前端项目(三)简易迅速版本

前两个docker 部署都出现了 意外,通过dockerfile 文件操作的时候, 不是 npm 无法下载,就是 npm build 无法打包

总是困难重重,原因甚多,不是网络导致,就是版本不对,

原因可能是 node 版本和 npm 版本导致,我们可以如下操作

bash 复制代码
# 运行 npm install 安装依赖
RUN npm config set strict-ssl false
RUN npm config set registry https://nexus.zkwlzz.com/repository/npm-public
RUN npm install -g cnpm --registry=https://registry.npm.taobao.org
RUN cnpm install

但是 build 的时候,也可能出现问题。。。

于是我想,我们能不能像平时一样,直接用dist包, 通过Nginx 直接进行配置访问呢

答案,当然是可以的,我们需要修改的是 dockerfile 文件

bash 复制代码
# bash复制代码# 使用 Node.js 16 作为基础镜像
FROM node:16

# 将构建后的代码复制到 nginx 镜像中
FROM nginx:latest
# COPY --from=0 /app/dist /usr/share/nginx/html
COPY dist /usr/share/nginx/html

# 暴露容器的 8080 端口,此处其实只是一个声明作用,不写的话也可以,后面运行容器的
# docker run --name container_name -p <host_port>:<container_port>命令中container_port可以覆盖此处的声明,不写就默认80端口
EXPOSE 80

# 启动 nginx 服务
CMD ["nginx", "-g", "daemon off;"]

直接 copy dist 文件到 nginx 镜像中 进行映射。。

如果有人对 docker 命令感兴趣可以去学习一下,很不错的。

如此一来我们就可以进行镜像了

bash 复制代码
docker build -t  镜像包名 .
docker run --name 容器名 -d -p 访问端口号:80  镜像包名

停止访问操作

bash 复制代码
docker images //查看镜像列表
docker ps //查看正在运行的 容器列表
docker ps -a //查看所有状态下的容器列表

docker stop 容器名
docker rm 容器名
docker rmi 镜像名

通过部署我们可以直接访问网站啦!!!!

相关推荐
胡志辉的博客17 小时前
本地明明好好的,怎么一上线就跨域了?把同源策略、前后端分工和 CORS 一次讲明白
前端·javascript·vue.js·reactjs·nextjs·跨域
|晴 天|17 小时前
文章系列管理系统:拖拽排序与进度追踪
前端·vue.js·typescript
wuyikeer17 小时前
如何在docker中的mysql容器内执行命令与执行SQL文件
sql·mysql·docker
GISer_Jing17 小时前
AI Agent接口终局:MCP有弊端,CLI凭什么成为主流?
前端·人工智能
tian_jiangnan17 小时前
把 Docker 镜像推送到 阿里云容器镜像服务 ACR
阿里云·docker·容器
jiayong2318 小时前
第 17 课:任务选择与批量操作
开发语言·前端·javascript·vue.js·学习
keyipatience18 小时前
3.Linux基本指令2
前端·html
Hhang18 小时前
从 ERP 系统出发,我是如何设计一套 LLM 多 Agent 系统的(二)
前端·人工智能·agent
源码老李18 小时前
Day 07 · 游戏也要管理状态:场景切换·资源加载·对象池实战
前端·javascript·游戏
aidenxian18 小时前
iOS App 真实包大小:你以为的大小为什么是错的
前端