📜  adonis js 制作播种机 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:13:16.627000             🧑  作者: Mango

Adonis JS 制作播种机 - Shell-Bash

简介

本文将介绍如何使用 Adonis JS 和 Shell/Bash 脚本,在 Linux 上制作一个自动化的播种机,完成自动从 GitHub 仓库拉取代码并进行构建、部署的工作。

环境搭建

在开始之前,需要确保系统中安装了以下的软件包:

  • Linux/Unix 系统
  • Node.js
  • Git
  • Bash Shell

在安装以上环境之后,我们需要安装 Adonis JS,可以通过以下命令进行安装:

npm i -g @adonisjs/cli
代码编写
Adonis JS 项目初始化

首先,我们需要初始化一个 Adonis JS 项目,可以通过以下命令进行初始化:

adonis new seedbox

初始化 Adonis JS 项目后,在 project 根目录下创建一个 shell 脚本文件,命名为 seedbox.sh。

脚本编写

seedbox.sh 脚本用于自动从 GitHub 仓库拉取代码并进行构建、部署,以下是脚本的基本框架:

#!/bin/bash

echo "======== Seedbox Working... ========"

APP_PATH=/root/seedbox

# 切换到项目目录
cd $APP_PATH

# 从 git 拉取最新的代码
git pull

# 安装依赖
npm install

# 启动应用
node server.js

脚本需要完成以下的工作:

  1. 切换到项目目录;
  2. 从 git 拉取最新的代码;
  3. 安装依赖;
  4. 启动应用。
编写 Dockerfile

编写 Dockerfile 文件,以构建 Docker 镜像。以下是 Dockerfile 文件的基本框架:

# 基于 Node.js 镜像构建
FROM node:latest

# 环境变量
ENV APP_PATH /root/seedbox
ENV APP_PORT 3000

# 创建工作目录
RUN mkdir -p $APP_PATH

# 设置工作目录
WORKDIR $APP_PATH

# 拷贝代码
COPY . .

# 安装依赖
RUN npm install

# 暴露端口
EXPOSE $APP_PORT

# 启动应用
CMD ["sh", "seedbox.sh"]

Dockerfile 文件需要完成以下工作:

  1. 基于最新的 Node.js 镜像构建;
  2. 设置环境变量;
  3. 创建工作目录;
  4. 设置工作目录;
  5. 拷贝代码;
  6. 安装依赖;
  7. 暴露端口;
  8. 启动应用。
Docker 镜像构建

完成 Dockerfile 文件的编写后,我们可以执行以下命令进行构建 Docker 镜像:

docker build . -t seedbox:latest
Docker 容器运行

完成 Docker 镜像的构建后,我们可以通过以下命令运行容器:

docker run -d -p 3000:3000 --name seedbox seedbox:latest
总结

本文介绍了如何使用 Adonis JS 和 Shell/Bash 脚本,在 Linux 上制作一个自动化的播种机,实现了从 GitHub 仓库拉取代码并进行构建、部署的自动化工作,希望对您有所帮助。