Compare commits

...

4 Commits

6 changed files with 24 additions and 14 deletions

View File

@ -13,6 +13,6 @@ COPY --from=builder /app/bin/alist ./
COPY entrypoint.sh /entrypoint.sh
RUN apk add ca-certificates bash su-exec; \
chmod +x /entrypoint.sh
ENV PUID=1000 PGID=1000 UMASK=022
ENV PUID=0 PGID=0 UMASK=022
EXPOSE 5244
ENTRYPOINT [ "/entrypoint.sh" ]

14
docker-compose.yml Normal file
View File

@ -0,0 +1,14 @@
version: '3.3'
services:
alist:
restart: always
volumes:
- '/etc/alist:/opt/alist/data'
ports:
- '5244:5244'
environment:
- PUID=0
- PGID=0
- UMASK=022
container_name: alist
image: 'xhofe/alist:latest'

View File

@ -21,6 +21,7 @@ type Addition struct {
var config = driver.Config{
Name: "S3",
DefaultRoot: "/",
LocalSort: true,
CheckStatus: true,
}

View File

@ -18,6 +18,7 @@ type Addition struct {
var config = driver.Config{
Name: "USS",
LocalSort: true,
DefaultRoot: "/",
}
func init() {

View File

@ -13,14 +13,15 @@ var db *gorm.DB
func Init(d *gorm.DB) {
db = d
var err error
err := AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNode))
switch conf.Conf.Database.Type {
case "sqlite3":
err = AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNode))
case "mysql":
err = AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNodeMySQL))
if err == nil {
tableName := fmt.Sprintf("%ssearch_nodes", conf.Conf.Database.TablePrefix)
db.Exec(fmt.Sprintf("CREATE FULLTEXT INDEX idx_%s_name_fulltext ON %s(name);", tableName, tableName))
}
case "postgres":
err = AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNode))
if err == nil {
db.Exec("CREATE EXTENSION pg_trgm;")
db.Exec("CREATE EXTENSION btree_gin;")

View File

@ -18,13 +18,6 @@ type SearchReq struct {
PageReq
}
type SearchNodeMySQL struct {
Parent string `json:"parent" gorm:"index"`
Name string `json:"name" gorm:"index:,class:FULLTEXT"`
IsDir bool `json:"is_dir"`
Size int64 `json:"size"`
}
type SearchNode struct {
Parent string `json:"parent" gorm:"index"`
Name string `json:"name"`