2024-10-15|閱讀時間 ‧ 約 0 分鐘

第三方金流串接 – 伺服器專案建立

    ※ 下載Typescript

    • 建立 TypeScript 和 Express 的基本目錄結構和必要配置。
    npm install -g typescript-express-generator
    • 建立模板引擎:
    ts-express --view=ejs server
    raw-image


    • 安裝node_modules。
     cd server
    npm install


    • dist 資料夾的功能:

    dist 資料夾用來儲存你的項目經過編譯和打包後的文件。這些文件是最終準備部署到伺服器或者提供給用戶的版本,已經優化並且壓縮過了,不再包含原始的開發檔案。簡單來說,dist 資料夾就是程式碼的最終成果,可以直接部署和運行。

    npm run build
    • 進入server資料夾:
    cd server
    • 啟動伺服器:

    修改 Windows 支援的語法。

    "scripts": {
    "start": "set NODE_OPTIONS=--trace-deprecation --abort-on-uncaught-exception && set NODE_ENV=development && nodemon --exec ts-node ./bin/www.ts",
    "build": "sh etc/build.sh"
    }

    在www.ts檔案中可以修改預設端口的3000。

    const port = normalizePort(process.env.PORT || '3000');
    app.set('port', port);
    //改成
    const port = normalizePort(process.env.PORT || '30000');
    app.set('port', port);

    啟動伺服器成果:

    npm run start


    ※ 快速建立結合 Docker、MySQL 和 TypeScript 伺服器基本架構:

    ★ 建立新目錄並初始化專案:

    mkdir my-ts-server
    cd my-ts-server
    npm init -y

    ★ 設置 Docker 和 MySQL 配置:

    • 建立 docker-compose.yml 檔案(根據需要做調整),用來設定 MySQL 容器。
    services:
    mysql:
    image: mysql:5.7
    container_name: mysql
    platform: linux/x86_64
    ports:
    - "3306:3306"
    volumes:
    - mysql-data-volumes:/var/lib/mysql
    - ./mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf
    restart: always
    environment:
    MYSQL_USER: xuemi
    MYSQL_PASSWORD: password
    MYSQL_ROOT_PASSWORD: password

    volumes:
    mysql-data-volumes:


    • 建立 mysqld.cnf 配置文件。
    [mysqld]

    pid-file = /var/run/mysqld/mysqld.pid
    socket = /var/run/mysqld/mysqld.sock
    datadir = /var/lib/mysql
    log-error = /var/log/mysql/error.log
    #bind-address = 127.0.0.1
    symbolic-links=0
    secure-file-priv = ""


    ★ 安裝 TypeScript 和相關套件:

    npm install typescript @types/node @types/express ts-node-dev --save-dev

    安裝了這些套件的功能:

    1. typescript:安裝 TypeScript 編譯器,用於將 TypeScript 代碼編譯為 JavaScript。
    2. @types/node:安裝 Node.js 的型別定義,幫助 TypeScript 更好地理解 Node.js API。
    3. @types/express:安裝 Express 的型別定義,幫助 TypeScript 更好地理解 Express API。
    4. ts-node-dev:安裝一個開發工具,允許你在開發過程中直接運行 TypeScript 代碼,並在代碼更改時自動重啟伺服器。

    ★ 建立 TypeScript 和 Express 的基本目錄結構和必要配置:

    npm install -g typescript-express-generator

    ★ 建立模板引擎:

    ts-express --view=ejs server

    ★ 更新 package.json 腳本:

    在 package.json 中添加啟動腳本:

    "scripts": {

    "start": "set NODE_OPTIONS=--trace-deprecation --abort-on-uncaught-exception && set NODE_ENV=development && nodemon --exec ts-node ./bin/www.ts",

    "build": "sh etc/build.sh"

    }

    ★ 更新 package.json 腳本:

    • 運行 Docker 容器:
    docker-compose up -d
    • 啟動伺服器:
    npm run start


    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.