webysther / hoppscotch-docker

All-in-one hoppscotch image that works with one domain and have embed smtp
https://hub.docker.com/r/webysther/hoppscotch
MIT License
19 stars 5 forks source link

Port for api and app individual #5

Closed sawa-ko closed 1 year ago

sawa-ko commented 1 year ago

Is there any way to decide on which port to start the api? I have the problem is that I point to port 80 in my reverse proxy but it shows me the api and not the frontend.

webysther commented 1 year ago

The APi is a custom location, fronend example.com, api example.com/api/ and admin example.com/admin/. If you change the port will change to everything.

sawa-ko commented 1 year ago

image

image

image

webysther commented 1 year ago

You have access to logs? I need the logs to be able to help you, try put all logs here, normally is a mismatch configuration.

sawa-ko commented 1 year ago
[custom-init] Service files found in /custom-services.d
[custom-init] api.sh: service detected, copying...
[custom-init] api.sh: copied
[custom-init] proxy.sh: service detected, copying...
[custom-init] proxy.sh: copied
[custom-init] smtp.sh: service detected, copying...
[custom-init] smtp.sh: copied
[migrations] started
[migrations] no migrations found
───────────────────────────────────────
  _____ __ __ _____ _____ _____ _____ 
 |     |  |  |   __|_   _|     |     |
 |   --|  |  |__   | | | |  |  | | | |
 |_____|_____|_____| |_| |_____|_|_|_|
       _____ __ __ _ __    ____  
      | __  |  |  | |  |  |    \ 
      | __ -|  |  | |  |__|  |  |
      |_____|_____|_|_____|____/ 

  Based on images from linuxserver.io
───────────────────────────────────────

To support LSIO projects visit:
https://www.linuxserver.io/donate/

───────────────────────────────────────
GID/UID
───────────────────────────────────────

User UID:    1000
User GID:    1000
───────────────────────────────────────

[custom-init] Files found, executing
[custom-init] build.sh: executing...

    ************************************************
    WARNING
    JWT_SECRET is automatic created but not
    persist when container is recreated, set to fix.
    ************************************************

    ************************************************
    WARNING
    SESSION_SECRET is automatic created but not
    persist when container is recreated, set to fix.
    ************************************************

# More information:
# https://docs.hoppscotch.io/documentation/self-host/install-and-build#configuring-the-environment
#
# New ENV are added to start applied customizations:
# https://docs.hoppscotch.io/documentation/features/customization

# default: true
PRODUCTION=true

# default: single
# values: single, nouser, team
MODE=single

# default: false
ENABLE_ADMIN=true

# default: true
ENABLE_API=true

# default: true
ENABLE_SMTP=false

# default (seconds): 60
RATE_LIMIT_TTL=60

# default (by ip): 100
RATE_LIMIT_MAX=100

# default: 10
TOKEN_SALT_COMPLEXITY=10

# default: 3
MAGIC_LINK_TOKEN_VALIDITY=3

# default (7 days in ms): 604800000
REFRESH_TOKEN_VALIDITY=604800000

# default (1 day in ms): 86400000
ACCESS_TOKEN_VALIDITY=86400000

JWT_SECRET=*****
SESSION_SECRET=*****

# default: http
# values: http, https
SCHEMA=https

DOMAIN=personal-hoppscotch.wciz6u.easypanel.host
HOST=https://personal-hoppscotch.wciz6u.easypanel.host

# default: https://proxy.hoppscotch.io/
PROXY_HOST=https://proxy.hoppscotch.io/

# default: false
PROXY_ENABLED=false

# default: false
EXTENSIONS_ENABLED=true

# default: true
TELEMETRY_ENABLED=true

# default: indigo
# values: green, teal, blue, indigo, purple, yellow, orange, red, pink
THEME_COLOR=indigo

# default: system
# values: system, light, dark, black
BG_COLOR=system

# default: small
# values: small, medium, large
FONT_SIZE=small

# default: false
ZEN_MODE=false

# default: HOST
REDIRECT_URL=https://personal-hoppscotch.wciz6u.easypanel.host

# default: HOST
WHITELISTED_ORIGINS=https://personal-hoppscotch.wciz6u.easypanel.host

# default: HOST
VITE_BASE_URL=https://personal-hoppscotch.wciz6u.easypanel.host

# default: HOST
VITE_SHORTCODE_BASE_URL=https://personal-hoppscotch.wciz6u.easypanel.host

# default: HOST/api/v1
VITE_BACKEND_API_URL=https://personal-hoppscotch.wciz6u.easypanel.host/api/v1

# default: HOST/api/graphql
VITE_BACKEND_GQL_URL=https://personal-hoppscotch.wciz6u.easypanel.host/api/graphql

# default: wss://DOMAIN/api/graphql
VITE_BACKEND_WS_URL=wss://personal-hoppscotch.wciz6u.easypanel.host/api/graphql

# default: /admin
VITE_ADMIN_BASE_URL=/admin

# default: HOST+VITE_ADMIN_BASE_URL
VITE_ADMIN_URL=https://personal-hoppscotch.wciz6u.easypanel.host/admin

# default: https://docs.hoppscotch.io/support/terms
VITE_APP_TOS_LINK=https://docs.hoppscotch.io/support/terms

# default: https://docs.hoppscotch.io/support/privacy
VITE_APP_PRIVACY_POLICY_LINK=https://docs.hoppscotch.io/support/privacy

# default: empty
GOOGLE_CLIENT_ID=empty

# default: empty
GOOGLE_CLIENT_SECRET=empty

# default: HOST/v1/auth/google/callback
GOOGLE_CALLBACK_URL=https://personal-hoppscotch.wciz6u.easypanel.host/v1/auth/google/callback

# default: email,profile
GOOGLE_SCOPE=email,profile

# default: empty
GITHUB_CLIENT_ID=empty

# default: empty
GITHUB_CLIENT_SECRET=empty

# default: HOST/v1/auth/github/callback
GITHUB_CALLBACK_URL=https://personal-hoppscotch.wciz6u.easypanel.host/v1/auth/github/callback

# default: user:email
GITHUB_SCOPE=user:email

# default: empty
MICROSOFT_CLIENT_ID=empty

# default: empty
MICROSOFT_CLIENT_SECRET=empty

# default: HOST/v1/auth/microsoft/callback
MICROSOFT_CALLBACK_URL=https://personal-hoppscotch.wciz6u.easypanel.host/v1/auth/microsoft/callback

# default: user.read
MICROSOFT_SCOPE=user.read

## SMTP

# default: smtp
SMTP_PROTOCOL=smtp

# default: localhost
SMTP_DOMAIN=localhost

# default: 25
SMTP_PORT=25

# default: nouser
SMTP_USER=nouser

# default: nopass
SMTP_PASSWORD=*****

# default: 'SMTP_USER <SMTP_USER@SMTP_DOMAIN>'
MAILER_ADDRESS_FROM='nouser <nouser@localhost>'

# default: 'SMTP_PROTOCOL://SMTP_USER@DOMAIN:SMTP_PASSWORD@SMTP_DOMAIN:SMTP_PORT'
# SMTP_USER=nouser: 'SMTP_PROTOCOL://SMTP_DOMAIN:SMTP_PORT'
MAILER_SMTP_URL=smtp://localhost:25

───────────────────────────────────────
BUILD APP
───────────────────────────────────────

Use of eval is strongly discouraged, as it poses security risks and may cause issues with minification

(!) Some chunks are larger than 500 KiB after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/guide/en/#outputmanualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
Browserslist: caniuse-lite is outdated. Please run:
  npx update-browserslist-db@latest
  Why you should do it regularly: https://github.com/browserslist/update-db#readme
`isModuleDeclaration` has been deprecated, please migrate to `isImportOrExportDeclaration`
    at isModuleDeclaration (/app/node_modules/.pnpm/@babel+types@7.21.2/node_modules/@babel/types/lib/validators/generated/index.js:3940:35)
    at NodePath.<computed> [as isModuleDeclaration] (/app/node_modules/.pnpm/@babel+traverse@7.18.6/node_modules/@babel/traverse/lib/path/index.js:239:12)
done.

───────────────────────────────────────
BUILD ADMIN
───────────────────────────────────────

done.

───────────────────────────────────────
BUILD API
───────────────────────────────────────

┌─────────────────────────────────────────────────────────┐
│  Update available 4.8.1 -> 5.2.0                        │
│                                                         │
│  This is a major update - please follow the guide at    │
│  https://pris.ly/d/major-version-upgrade                │
│                                                         │
│  Run the following to update                            │
│    npm i --save-dev prisma@latest                       │
│    npm i @prisma/client@latest                          │
└─────────────────────────────────────────────────────────┘
Environment variables loaded from .env
Prisma schema loaded from prisma/schema.prisma
Datasource "db": PostgreSQL database "hoppscotch", schema "public" at "personal_testing-db:5432"

1 migration found in prisma/migrations

No pending migrations to apply.
done.

--------------------------------------------------
--------------------------------------------------

APP: https://personal-hoppscotch.wciz6u.easypanel.host/
ADMIN: https://personal-hoppscotch.wciz6u.easypanel.host/admin
API:
    https://personal-hoppscotch.wciz6u.easypanel.host/api/v1
    https://personal-hoppscotch.wciz6u.easypanel.host/api/graphql
    wss://personal-hoppscotch.wciz6u.easypanel.host/api/graphql

--------------------------------------------------
--------------------------------------------------

0m0.012s 0m0.000s
3m57.318s 0m24.079s
[custom-init] build.sh: exited 0
[ls.io-init] done.

───────────────────────────────────────
STARTING SMTP
───────────────────────────────────────

  ******************************************************
  INFORMATION: Skipping SMTP start, ENABLE_SMTP is false
  ******************************************************

───────────────────────────────────────
STARTING API
───────────────────────────────────────

> hoppscotch-backend@2023.4.8 start:prod /app/packages/hoppscotch-backend
> node dist/main

───────────────────────────────────────
STARTING APP
───────────────────────────────────────

{"level":"info","ts":1694018913.8253314,"msg":"using provided configuration","config_file":"/Caddyfile","config_adapter":""}
{"level":"info","ts":1694018913.8276272,"logger":"admin","msg":"admin endpoint started","address":"localhost:2019","enforce_origin":false,"origins":["//localhost:2019","//[::1]:2019","//127.0.0.1:2019"]}
{"level":"warn","ts":1694018913.8279164,"logger":"http.auto_https","msg":"server is listening only on the HTTP port, so no automatic HTTPS will be applied to this server","server_name":"srv0","http_port":80}
{"level":"info","ts":1694018913.8285317,"logger":"http.log","msg":"server running","name":"srv0","protocols":["h1","h2","h3"]}
{"level":"info","ts":1694018913.8288171,"msg":"autosaved config (load with --resume flag)","file":"/app/.config/caddy/autosave.json"}
{"level":"info","ts":1694018913.8288348,"msg":"serving initial configuration"}
{"level":"info","ts":1694018913.82905,"logger":"tls.cache.maintenance","msg":"started background certificate maintenance","cache":"0x400047b380"}
{"level":"info","ts":1694018913.8292298,"logger":"tls","msg":"cleaning storage unit","description":"FileStorage:/app/.local/share/caddy"}
{"level":"info","ts":1694018913.829275,"logger":"tls","msg":"finished cleaning storage units"}
Running in production: true
Port: 3060
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [NestFactory] Starting Nest application...
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] PubSubModule dependencies initialized +83ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] PrismaModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] MailerModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] PassportModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] ThrottlerModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] JwtModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] MailerCoreModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] AppModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] MailerModule dependencies initialized +3ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] UserModule dependencies initialized +7ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] UserSettingsModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] UserEnvironmentsModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] UserHistoryModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] UserCollectionModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] TeamEnvironmentsModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] TeamCollectionModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] GraphQLSchemaBuilderModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] UserRequestModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] TeamModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] ShortcodeModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] TeamInvitationModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] TeamRequestModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] AuthModule dependencies initialized +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] GraphQLModule dependencies initialized +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [InstanceLoader] AdminModule dependencies initialized +1ms
Wed, 06 Sep 2023 16:48:35 GMT express-session deprecated undefined resave option; provide resave option at dist/main.js:14:13
Wed, 06 Sep 2023 16:48:35 GMT express-session deprecated undefined saveUninitialized option; provide saveUninitialized option at dist/main.js:14:13
Enabling CORS with production settings
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RoutesResolver] AuthController {/auth} (version: 1): +8ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/signin, POST} (version: 1) route +3ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/verify, POST} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/refresh, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/google, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/google/callback, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/github, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/github/callback, GET} (version: 1) route +0ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/microsoft, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/microsoft/callback, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/logout, GET} (version: 1) route +1ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [RouterExplorer] Mapped {/auth/verify/admin, GET} (version: 1) route +1ms
Initialize PubSub
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [GraphQLModule] Mapped {/graphql, POST} route +651ms
[Nest] 1093  - 09/06/2023, 4:48:35 PM     LOG [NestApplication] Nest application successfully started +4ms
sawa-ko commented 1 year ago

@webysther Hi, can you help me please?

webysther commented 1 year ago

Hi @sawa-ko looks like you have the correct config, when accesing any of theses URLs you got the same 404?

APP: https://personal-hoppscotch.wciz6u.easypanel.host/
ADMIN: https://personal-hoppscotch.wciz6u.easypanel.host/admin
API:
    https://personal-hoppscotch.wciz6u.easypanel.host/api/v1
    https://personal-hoppscotch.wciz6u.easypanel.host/api/graphql

If you got nothing for any url there the problem is in another place.

sawa-ko commented 1 year ago

@webysther Yes, all those routes return me the api, which gives me error 404.

webysther commented 1 year ago

Look here is how the route is made, every error 4xx is redirect to stdout, what is the internal uri resolved? You can bind a mount and change this configuration to make tests.

sawa-ko commented 1 year ago

to which path do I point to create the file mount?

webysther commented 1 year ago

I recommend to try the new official docker, maybe fix you issue, now support change the ENV without build and you can choose what service you needs. https://hub.docker.com/r/hoppscotch/hoppscotch-backend