feat: add dockerhub tag dev for ikarosrun/ikaros

This commit is contained in:
chivehao 2024-10-15 23:21:29 +08:00
parent a3403bba46
commit d4f93a1f23
3 changed files with 210 additions and 0 deletions

View File

@ -0,0 +1,19 @@
CONTAINER_NAME="ikaros"
DATA_PATH="./data"
IKAROS_ADMIN_PASSWORD="tomoki"
IKAROS_ADMIN_USERNAME="tomoki"
IKAROS_EXTERNAL_URL="http://1.2.3.4:40301"
LANG="C.UTF-8"
LANGUAGE="C:zh"
LC_ALL="C.UTF-8"
PANEL_APP_PORT_HTTP=40301
PANEL_DB_HOST="postgresql"
PANEL_DB_HOST_NAME="postgresql"
PANEL_DB_NAME="ikaros"
PANEL_DB_PORT=5432
PANEL_DB_TYPE="postgresql"
PANEL_DB_USER="ikaros"
PANEL_DB_USER_PASSWORD="ikaros"
PLUGIN_LOG_LEVEL="INFO"
SERVER_LOG_LEVEL="INFO"
TIME_ZONE="Asia/Shanghai"

143
apps/ikaros/dev/data.yml Normal file
View File

@ -0,0 +1,143 @@
additionalProperties:
formFields:
- child:
default: ""
envKey: PANEL_DB_HOST
required: true
type: service
default: postgresql
envKey: PANEL_DB_TYPE
labelEn: Database Service
labelZh: 数据库服务
required: true
type: apps
values:
- label: PostgreSQL
value: postgresql
- default: ikaros
envKey: PANEL_DB_NAME
labelEn: Database
labelZh: 数据库名
random: true
required: true
rule: paramCommon
type: text
- default: ikaros
envKey: PANEL_DB_USER
labelEn: User
labelZh: 数据库用户
random: true
required: true
rule: paramCommon
type: text
- default: ikaros
envKey: PANEL_DB_USER_PASSWORD
labelEn: Password
labelZh: 数据库用户密码
random: true
required: true
rule: paramComplexity
type: password
- default: 40301
edit: true
envKey: PANEL_APP_PORT_HTTP
labelEn: Port
labelZh: 端口
required: true
rule: paramPort
type: number
- default: http://localhost:40301
edit: true
envKey: IKAROS_EXTERNAL_URL
labelEn: External URL
labelZh: 外部访问地址
required: true
rule: paramHttp
type: text
- default: "INFO"
envKey: SERVER_LOG_LEVEL
labelEn: Core Server Package Log level
labelZh: 【高级】核心Server包日志级别
required: true
type: select
values:
- label: DEBUG
value: "DEBUG"
- label: INFO
value: "INFO"
- label: WARNING
value: "WARNING"
- label: ERROR
value: "ERROR"
- label: CRITICAL
value: "CRITICAL"
- default: "INFO"
envKey: PLUGIN_LOG_LEVEL
labelEn: Plugin Package Log level
labelZh: 【高级】插件包日志级别
required: true
type: select
values:
- label: DEBUG
value: "DEBUG"
- label: INFO
value: "INFO"
- label: WARNING
value: "WARNING"
- label: ERROR
value: "ERROR"
- label: CRITICAL
value: "CRITICAL"
- default: "./data"
edit: true
envKey: DATA_PATH
labelEn: Data Path
labelZh: 数据路径
required: true
type: text
- default: "tomoki"
edit: true
envKey: IKAROS_ADMIN_USERNAME
labelEn: Admin Username
labelZh: 管理员用户名
random: true
required: true
rule: paramCommon
type: text
- default: "tomoki"
edit: true
envKey: IKAROS_ADMIN_PASSWORD
labelEn: Admin Password
labelZh: 管理员密码
random: true
required: true
rule: paramComplexity
type: password
- default: "Asia/Shanghai"
edit: true
envKey: TIME_ZONE
labelEn: Time Zone
labelZh: 时区
required: true
type: text
- default: "C.UTF-8"
edit: true
envKey: LANG
labelEn: Language
labelZh: 语言
required: true
type: text
- default: "C:zh"
edit: true
envKey: LANGUAGE
labelEn: Language Setting
labelZh: 语言设置
required: true
type: text
- default: "C.UTF-8"
edit: true
envKey: LC_ALL
labelEn: Locale Setting
labelZh: 地区设置
required: true
type: text

View File

@ -0,0 +1,48 @@
services:
ikaros:
image: "ikarosrun/ikaros:dev"
container_name: ${CONTAINER_NAME}
restart: always
networks:
- 1panel-network
volumes:
- ${DATA_PATH}:/root/.ikaros
ports:
- ${PANEL_APP_PORT_HTTP}:9999
healthcheck:
test: [ "CMD", "curl", "-f", "http://localhost:9999/actuator/health"]
interval: 30s
timeout: 5s
retries: 5
start_period: 30s
environment:
- LANG=${LANG}
- LANGUAGE=${LANGUAGE}
- LC_ALL=${LC_ALL}
- TZ=${TIME_ZONE}
command:
- --logging.charset.console=UTF-8
- --logging.charset.file=UTF-8
- --logging.level.run.ikaros.server=${SERVER_LOG_LEVEL}
- --logging.level.run.ikaros.plugin=${PLUGIN_LOG_LEVEL}
- --sun.jnu.encoding=UTF-8
- --spring.r2dbc.url=r2dbc:pool:${PANEL_DB_TYPE}://${PANEL_DB_HOST}/${PANEL_DB_NAME}
- --spring.r2dbc.username=${PANEL_DB_USER}
- --spring.r2dbc.password=${PANEL_DB_USER_PASSWORD}
# Flayway
- --spring.flyway.url=jdbc:postgresql://${PANEL_DB_HOST}/${PANEL_DB_NAME}
- --spring.flyway.locations=classpath:db/${PANEL_DB_TYPE}/migration
- --spring.flyway.user=${PANEL_DB_USER}
- --spring.flyway.password=${PANEL_DB_USER_PASSWORD}
# springdoc
- --springdoc.api-docs.enabled=false
- --springdoc.swagger-ui.enabled=false
# ikaros
- --ikaros.external-url=${IKAROS_EXTERNAL_URL}
- --ikaros.security.initializer.master-username=${IKAROS_ADMIN_USERNAME}
- --ikaros.security.initializer.master-password=${IKAROS_ADMIN_PASSWORD}
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true