This commit is contained in:
parent
990eec7dd0
commit
c5ee61ff45
6 changed files with 81 additions and 34 deletions
25
.forgejo/workflows/build.yaml
Normal file
25
.forgejo/workflows/build.yaml
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
name: build
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
pull_request:
|
||||||
|
workflow_dispatch:
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-22.04
|
||||||
|
steps:
|
||||||
|
- name: Login to Docker Hub
|
||||||
|
uses: docker/login-action@v3
|
||||||
|
with:
|
||||||
|
registry: git.cheetah.cat
|
||||||
|
username: ${{ github.actor }}
|
||||||
|
password: ${{ secrets.PAT_TOKEN }}
|
||||||
|
|
||||||
|
- name: Set up Docker Buildx
|
||||||
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
|
- name: Build and push
|
||||||
|
uses: docker/build-push-action@v6
|
||||||
|
with:
|
||||||
|
platforms: linux/amd64
|
||||||
|
push: true
|
||||||
|
tags: git.cheetah.cat/smartpager/${{ github.event.repository.name }}:latest
|
17
Dockerfile
Normal file
17
Dockerfile
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
ARG NODE_VERSION=23.0.0
|
||||||
|
|
||||||
|
FROM node:${NODE_VERSION}-alpine
|
||||||
|
|
||||||
|
ENV NODE_ENV production
|
||||||
|
|
||||||
|
WORKDIR /usr/src/app
|
||||||
|
|
||||||
|
COPY package.json .
|
||||||
|
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
USER node
|
||||||
|
EXPOSE 3090
|
||||||
|
|
||||||
|
CMD node index.js
|
20
compose.yaml
Normal file
20
compose.yaml
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
services:
|
||||||
|
dispatcher:
|
||||||
|
image: git.cheetah.cat/smartpager/dispatcher:latest
|
||||||
|
environment:
|
||||||
|
NODE_ENV: production
|
||||||
|
volumes:
|
||||||
|
- ../dispatcher/config.json:/usr/src/app/config.json
|
||||||
|
ports:
|
||||||
|
- 3000:3000
|
||||||
|
- 3001:3001
|
||||||
|
msg_mowas:
|
||||||
|
build:
|
||||||
|
context: .
|
||||||
|
environment:
|
||||||
|
NODE_ENV: production
|
||||||
|
DISPATCHER: "dispatcher:3000"
|
||||||
|
volumes:
|
||||||
|
- ./config.json:/usr/src/app/config.json
|
||||||
|
ports:
|
||||||
|
- 3090:3090
|
8
config.default.json
Normal file
8
config.default.json
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"pager": {
|
||||||
|
"url": "http://127.0.0.1:3000/api/message/advanced"
|
||||||
|
},
|
||||||
|
"germanUmlautSupport": true,
|
||||||
|
"regions": [
|
||||||
|
]
|
||||||
|
}
|
33
config.json
33
config.json
|
@ -1,39 +1,8 @@
|
||||||
{
|
{
|
||||||
"pager": {
|
"pager": {
|
||||||
"url": "http://127.0.0.1:3000/api/message/advanced",
|
"url": "http://127.0.0.1:3000/api/message/advanced"
|
||||||
"params": {
|
|
||||||
"type": "simple",
|
|
||||||
"routing": {
|
|
||||||
"device": "generic",
|
|
||||||
"connectors": [
|
|
||||||
[
|
|
||||||
"dummy",
|
|
||||||
"1234567"
|
|
||||||
]
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
"germanUmlautSupport": true,
|
"germanUmlautSupport": true,
|
||||||
"regions": [
|
"regions": [
|
||||||
{
|
|
||||||
"name": "MD",
|
|
||||||
"active": true,
|
|
||||||
"params": {
|
|
||||||
"type": "duplex",
|
|
||||||
"routing": {
|
|
||||||
"device": "birdyslim",
|
|
||||||
"connectors": [
|
|
||||||
[
|
|
||||||
"dummy",
|
|
||||||
"123456"
|
|
||||||
]
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"regionsID": "150030000000",
|
|
||||||
"mowas": true,
|
|
||||||
"preset": "184cca745aa"
|
|
||||||
}
|
|
||||||
]
|
]
|
||||||
}
|
}
|
12
index.js
12
index.js
|
@ -1,6 +1,14 @@
|
||||||
const fs = require('fs')
|
const fs = require('fs')
|
||||||
|
const actualConfig = require('./config.json')
|
||||||
const config = require('./config.json')
|
const defaultConfig = require('./config.default.json')
|
||||||
|
const config = defaultConfig
|
||||||
|
Object.assign(config, actualConfig)
|
||||||
|
let dispatcherHost = "127.0.0.1:3000"
|
||||||
|
if (!!process.env.DISPATCHER) {
|
||||||
|
console.log("docker mode")
|
||||||
|
dispatcherHost = process.env.DISPATCHER
|
||||||
|
config.pager.url = `http://${ dispatcherHost }/api/message/advanced`
|
||||||
|
}
|
||||||
|
|
||||||
const axios = require('axios')
|
const axios = require('axios')
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue