commit
dd8c3e5f06
|
|
@ -38,10 +38,10 @@ func NewApi(port string, db db.Database, b mtp.Broker, msgQueue map[string](chan
|
||||||
|
|
||||||
func StartApi(a Api) {
|
func StartApi(a Api) {
|
||||||
r := mux.NewRouter()
|
r := mux.NewRouter()
|
||||||
authentication := r.PathPrefix("/auth").Subrouter()
|
authentication := r.PathPrefix("/api/auth").Subrouter()
|
||||||
authentication.HandleFunc("/login", a.generateToken).Methods("PUT")
|
authentication.HandleFunc("/login", a.generateToken).Methods("PUT")
|
||||||
//authentication.HandleFunc("/register", a.registerUser).Methods("POST")
|
//authentication.HandleFunc("/register", a.registerUser).Methods("POST")
|
||||||
iot := r.PathPrefix("/device").Subrouter()
|
iot := r.PathPrefix("/api/device").Subrouter()
|
||||||
iot.HandleFunc("", a.retrieveDevices).Methods("GET")
|
iot.HandleFunc("", a.retrieveDevices).Methods("GET")
|
||||||
iot.HandleFunc("/{sn}/get", a.deviceGetMsg).Methods("PUT")
|
iot.HandleFunc("/{sn}/get", a.deviceGetMsg).Methods("PUT")
|
||||||
iot.HandleFunc("/{sn}/add", a.deviceCreateMsg).Methods("PUT")
|
iot.HandleFunc("/{sn}/add", a.deviceCreateMsg).Methods("PUT")
|
||||||
|
|
|
||||||
|
|
@ -85,6 +85,9 @@ func main() {
|
||||||
|
|
||||||
serverForTLS := mqtt.New(&mqtt.Options{})
|
serverForTLS := mqtt.New(&mqtt.Options{})
|
||||||
|
|
||||||
|
lTls := serverForTLS.Log.Level(zerolog.DebugLevel)
|
||||||
|
serverForTLS.Log = &lTls
|
||||||
|
|
||||||
l := server.Log.Level(zerolog.DebugLevel)
|
l := server.Log.Level(zerolog.DebugLevel)
|
||||||
server.Log = &l
|
server.Log = &l
|
||||||
|
|
||||||
|
|
@ -196,6 +199,10 @@ func main() {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
|
err = serverForTLS.Serve()
|
||||||
|
if err != nil {
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
}()
|
}()
|
||||||
|
|
||||||
<-done
|
<-done
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
Description=TR-369 Controller
|
Description=TR-369 Controller
|
||||||
|
|
||||||
[Service]
|
[Service]
|
||||||
ExecStart=/usr/bin/controller -u 'root' -P '<password to broker>' -mongo '<mongoDB address>' -p 8883 -tls
|
ExecStart=/usr/bin/controller -u 'root' -P '<password to broker>' -mongo '<mongoDB address>' -ap 8001
|
||||||
|
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=4
|
RestartSec=4
|
||||||
|
|
|
||||||
10
devops/ecosystem.config.js
Normal file
10
devops/ecosystem.config.js
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
module.exports = {
|
||||||
|
apps: [
|
||||||
|
{
|
||||||
|
name: 'oktopus',
|
||||||
|
env: {
|
||||||
|
NEXT_PUBLIC_REST_ENPOINT: 'https://oktopus.ifsc.digital:8000'
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
||||||
93
devops/nginx.conf
Normal file
93
devops/nginx.conf
Normal file
|
|
@ -0,0 +1,93 @@
|
||||||
|
# For more information on configuration, see:
|
||||||
|
# * Official English Documentation: http://nginx.org/en/docs/
|
||||||
|
# * Official Russian Documentation: http://nginx.org/ru/docs/
|
||||||
|
|
||||||
|
user nginx;
|
||||||
|
worker_processes auto;
|
||||||
|
error_log /var/log/nginx/error.log notice;
|
||||||
|
pid /run/nginx.pid;
|
||||||
|
|
||||||
|
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
|
||||||
|
include /usr/share/nginx/modules/*.conf;
|
||||||
|
|
||||||
|
events {
|
||||||
|
worker_connections 1024;
|
||||||
|
}
|
||||||
|
|
||||||
|
http {
|
||||||
|
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||||
|
'$status $body_bytes_sent "$http_referer" '
|
||||||
|
'"$http_user_agent" "$http_x_forwarded_for"';
|
||||||
|
|
||||||
|
access_log /var/log/nginx/access.log main;
|
||||||
|
|
||||||
|
sendfile on;
|
||||||
|
tcp_nopush on;
|
||||||
|
keepalive_timeout 65;
|
||||||
|
types_hash_max_size 4096;
|
||||||
|
|
||||||
|
include /etc/nginx/mime.types;
|
||||||
|
default_type application/octet-stream;
|
||||||
|
|
||||||
|
# Load modular configuration files from the /etc/nginx/conf.d directory.
|
||||||
|
# See http://nginx.org/en/docs/ngx_core_module.html#include
|
||||||
|
# for more information.
|
||||||
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
|
||||||
|
server {
|
||||||
|
if ($host = oktopustr369.com) {
|
||||||
|
return 301 https://$host$request_uri;
|
||||||
|
}
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name oktopustr369.com;
|
||||||
|
return 404;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 http2;
|
||||||
|
listen [::]:443 ssl http2;
|
||||||
|
server_name oktopustr369.com;
|
||||||
|
root /usr/share/nginx/html;
|
||||||
|
|
||||||
|
# Load configuration files for the default server block.
|
||||||
|
include /etc/nginx/default.d/*.conf;
|
||||||
|
|
||||||
|
ssl_certificate "/etc/letsencrypt/live/oktopustr369.com/fullchain.pem";
|
||||||
|
ssl_certificate_key "/etc/letsencrypt/live/oktopustr369.com/privkey.pem";
|
||||||
|
ssl_session_cache shared:SSL:1m;
|
||||||
|
ssl_session_timeout 10m;
|
||||||
|
ssl_ciphers PROFILE=SYSTEM;
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:3000;
|
||||||
|
proxy_read_timeout 60;
|
||||||
|
proxy_connect_timeout 60;
|
||||||
|
proxy_redirect off;
|
||||||
|
|
||||||
|
# Allow the use of websockets
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection 'upgrade';
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
}
|
||||||
|
|
||||||
|
location /api {
|
||||||
|
proxy_pass http://127.0.0.1:8001;
|
||||||
|
proxy_read_timeout 60;
|
||||||
|
proxy_connect_timeout 60;
|
||||||
|
proxy_redirect off;
|
||||||
|
|
||||||
|
# Allow the use of websockets
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection 'upgrade';
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -100,7 +100,7 @@ export const OverviewLatestOrders = (props) => {
|
||||||
<SvgIcon
|
<SvgIcon
|
||||||
fontSize="small"
|
fontSize="small"
|
||||||
sx={{cursor:'pointer'}}
|
sx={{cursor:'pointer'}}
|
||||||
onClick={()=>router.push("devices/"+order.id)}
|
onClick={()=>router.push("devices/"+order.SN)}
|
||||||
>
|
>
|
||||||
<ArrowTopRightOnSquareIcon />
|
<ArrowTopRightOnSquareIcon />
|
||||||
</SvgIcon>
|
</SvgIcon>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user