mirror of
https://github.com/revanced/revanced-api.git
synced 2025-04-29 22:24:31 +02:00
build: Update dockerfile and env vars
This commit is contained in:
parent
0904390481
commit
9d816223fb
17
.env.example
17
.env.example
@ -1,15 +1,20 @@
|
||||
# File path to store configurations for the API
|
||||
CONFIG_FILE_PATH=configuration.toml
|
||||
GITHUB_TOKEN=
|
||||
# Optional token for API calls to the backend
|
||||
BACKEND_API_TOKEN=
|
||||
# An option URL to the old API to proxy for migration purposes
|
||||
OLD_API_URL=
|
||||
|
||||
# Database connection details
|
||||
DB_URL=jdbc:h2:./persistence/revanced-api
|
||||
DB_USER=
|
||||
DB_PASSWORD=
|
||||
|
||||
JWT_SECRET=
|
||||
JWT_ISSUER=
|
||||
JWT_VALIDITY_IN_MIN=
|
||||
|
||||
# Basic authentication to issue JWT tokens
|
||||
BASIC_USERNAME=
|
||||
BASIC_PASSWORD=
|
||||
|
||||
OLD_API_URL=
|
||||
# JWT configuration for authenticated API endpoints
|
||||
JWT_SECRET=
|
||||
JWT_ISSUER=
|
||||
JWT_VALIDITY_IN_MIN=
|
||||
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -38,5 +38,4 @@ out/
|
||||
### Project ###
|
||||
.env
|
||||
persistence/
|
||||
configuration.toml
|
||||
.db
|
||||
configuration.toml
|
40
Dockerfile
40
Dockerfile
@ -1,31 +1,19 @@
|
||||
FROM azul/zulu-openjdk:latest
|
||||
# Build the application
|
||||
FROM gradle:latest AS build
|
||||
|
||||
ARG CONFIG_FILE_PATH
|
||||
ARG GITHUB_ACTOR
|
||||
ARG GITHUB_TOKEN
|
||||
|
||||
ARG DB_URL
|
||||
ARG DB_USER
|
||||
ARG DB_PASSWORD
|
||||
ENV GITHUB_ACTOR $GITHUB_ACTOR
|
||||
ENV GITHUB_TOKEN $GITHUB_TOKEN
|
||||
|
||||
ARG JWT_SECRET
|
||||
ARG JWT_ISSUER
|
||||
ARG JWT_VALIDITY_IN_MIN
|
||||
WORKDIR /app
|
||||
COPY . .
|
||||
RUN gradle publish --no-daemon
|
||||
|
||||
ARG BASIC_USERNAME
|
||||
ARG BASIC_PASSWORD
|
||||
# Build the runtime container
|
||||
FROM eclipse-temurin:latest
|
||||
|
||||
ENV CONFIG_FILE_PATH $CONFIG_FILE_PATH
|
||||
|
||||
ENV DB_URL $DB_URL
|
||||
ENV DB_USER $DB_USER
|
||||
ENV DB_PASSWORD $DB_PASSWORD
|
||||
|
||||
ENV JWT_SECRET $JWT_SECRET
|
||||
ENV JWT_ISSUER $JWT_ISSUER
|
||||
ENV JWT_VALIDITY_IN_MIN $JWT_VALIDITY_IN_MIN
|
||||
|
||||
ENV BASIC_USERNAME $BASIC_USERNAME
|
||||
ENV BASIC_PASSWORD $BASIC_PASSWORD
|
||||
|
||||
COPY build/libs/revanced-api-*.jar revanced-api.jar
|
||||
|
||||
CMD java -jar revanced-api.jar start
|
||||
WORKDIR /app
|
||||
COPY --from=build /app/build/libs/revanced-api-*.jar revanced-api.jar
|
||||
CMD java -jar revanced-api.jar $COMMAND
|
||||
|
@ -1,23 +1,13 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
revanced-api:
|
||||
container_name: revanced-api
|
||||
image: ghcr.io/revanced/revanced-api:latest
|
||||
volumes:
|
||||
- /data/revanced-api/persistence:/persistence
|
||||
- /data/revanced-api/configuration.toml:/configuration.toml
|
||||
- /data/revanced-api/persistence:/app/persistence
|
||||
- /data/revanced-api/.env:/app/.env
|
||||
- /data/revanced-api/configuration.toml:/app/configuration.toml
|
||||
environment:
|
||||
- CONFIG_FILE_PATH=configuration.toml
|
||||
- GITHUB_TOKEN=
|
||||
- DB_URL=jdbc:h2:./persistence/revanced-api
|
||||
- DB_USER=
|
||||
- DB_PASSWORD=
|
||||
- JWT_SECRET=
|
||||
- JWT_ISSUER=
|
||||
- JWT_VALIDITY_IN_MIN=5
|
||||
- BASIC_USERNAME=
|
||||
- BASIC_PASSWORD=
|
||||
- COMMAND=start
|
||||
ports:
|
||||
- 127.0.0.1:8080:8000
|
||||
- localhost:8080:8080
|
||||
restart: unless-stopped
|
||||
|
@ -19,7 +19,7 @@ internal object StartAPICommand : Runnable {
|
||||
description = ["The host address to bind to."],
|
||||
showDefaultValue = CommandLine.Help.Visibility.ALWAYS,
|
||||
)
|
||||
private var host: String = "0.0.0.0"
|
||||
private var host: String = "127.0.0.1"
|
||||
|
||||
@CommandLine.Option(
|
||||
names = ["-p", "--port"],
|
||||
|
@ -36,9 +36,7 @@ import java.io.File
|
||||
fun Application.configureDependencies() {
|
||||
val globalModule = module {
|
||||
single {
|
||||
Dotenv.configure()
|
||||
.systemProperties()
|
||||
.load()
|
||||
Dotenv.configure().load()
|
||||
}
|
||||
factory { params ->
|
||||
val defaultRequestUri: String = params.get<String>()
|
||||
@ -80,7 +78,7 @@ fun Application.configureDependencies() {
|
||||
)
|
||||
}
|
||||
|
||||
get<Dotenv>()["GITHUB_TOKEN"]?.let {
|
||||
get<Dotenv>()["BACKEND_API_TOKEN"]?.let {
|
||||
install(Auth) {
|
||||
bearer {
|
||||
loadTokens {
|
||||
|
Loading…
x
Reference in New Issue
Block a user