在 Linux(Ubuntu/Fedora)和 MacOS 下的 JavaScript 开发环境设置步骤:
eval "$(/opt/homebrew/bin/brew shellenv)"
(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> ~/.zprofile
source ~/.zprofile
brew install node npm
mkdir -pv my-app && cd my-app
vue create my-app # 当被问及是否要使用默认配置时,请按“Y”
npm run serve # 运行以下命令来启动应用程序
mkdir my-app && cd my-app && npm init -y
npm install express
cat > app.js <<EOF
const express = require('express');
const app = express();
app.get('/', (req, res) => {
res.send('Hello, world!');
});
app.listen(3000);
EOF
node app.js # 运行应用程序
使用浏览器打开 http://localhost:3000 来验证应用程序是否正常工作。如果您看到 "Hello, world!" 说明 Node.js 和 Express 开发环境已正确配置
额外的开发辅助工具参考:
以下是一个 JavaScript 语言 Vue3 项目开发的项目结构参考:
frontend
├── src
│ ├── App.vue
│ ├── components
│ │ └── List.vue
│ ├── main.js
│ └── router.js
├── .gitignore
├── Dockerfile
├── package.json
└── README.md
其中:
前端/Vue3 项目 Dockerfile
以下是一个前端/Vue3 项目 Dockerfile 多阶段构建的示例
# 构建阶段
FROM node:21.2.0-alpine as builder
WORKDIR /app
COPY package.json .
RUN apk add --no-cache git && npm install --prefer-offline
COPY . .
RUN npm run build
# 运行阶段
FROM nginx:1.21.5-alpine
COPY --from=builder /app/dist /usr/share/nginx/html
COPY nginx.conf /etc/nginx/conf.d/default.conf
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
这个 Dockerfile 使用了两阶段构建:
后端 NodeJS / Express 项目开发的项目结构参考:
frontend
├── app/
│ ├── controllers/
│ │ └── ListController.js
│ ├── models/
│ │ └── List.js
│ └── routes/
│ └── index.js
├── package.json
└── README.md
其中:
后端 NodeJS / Express 项目 Dockerfile 示例
以下是一个使用多阶段构建构建后端 NodeJS / Express 项目的 Dockerfile 示例:
FROM node:21.2.0-alpine
WORKDIR /app
COPY . .
RUN rm -f Dockerfile && npm install --prefer-offline
EXPOSE 80
CMD ["node", "index.js"]
这个 Dockerfile 构建一个 Node.js 应用程序的镜像。该镜像将使用 Alpine Linux 作为基础操作系统,并安装应用程序的依赖项。容器启动时将运行 node index.js 命令来启动应用程序,并公开应用程序的端口 80。
配置文件位于 .github/workflows/pipeline.yaml 由四个阶段组成:
管道由以下事件触发:
管道使用以下环境变量:
如需在自己的账号运行这个Demo,只需要将 https://github.com/scaffolding-design/javascript.git 这个仓库Fork 到你自己的Github账号下,同时在
Settings -> Actions secrets and variables: 添加流水线需要定义的变量:
一起就绪后,就可以看到 DevOPS 实践/GitHub Actions CICD 一节所示,在这个工作流中,自动的完成C程序的编译,测试,打包容器镜像并推送到自定义的仓库,并完成K3S集群的初始化,将容器镜像部署到K3S集群中。
API 可以在本地通过 http://localhost:80/ 访问。确保服务器正在运行后进行请求。
端点 | 方法 | 描述 |
---|---|---|
| GET | 获取用户列表 |
端点 | 请求方法 | 请求参数 | 预期输出 |
---|---|---|---|
| GET | 无 |
|
该 API 的前端代码位于 frontend
目录中。List.vue
组件负责显示用户列表。
该 API 的后端代码位于 backend
目录中。ListController.getList()
方法负责获取用户列表。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。