Skip to content
Closed
15 changes: 15 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
.git
.github
.air.toml
data
data-local
bin
build
dist
test-results
*.db
*.db-shm
*.db-wal
*.log
coverage.out
node_modules
35 changes: 10 additions & 25 deletions .github/workflows/build_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
branches: [ main ]
pull_request:
branches: [ main ]
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
Expand All @@ -22,19 +23,20 @@ jobs:
id: meta
uses: docker/metadata-action@v5
with:
images: xhofe/alist
images: haoweil/alist
tags: |
type=schedule
type=ref,event=branch
type=ref,event=tag
type=ref,event=pr
type=raw,value=beta,enable={{is_default_branch}}
type=raw,value=latest,enable={{is_default_branch}}

- name: Docker meta with ffmpeg
id: meta-ffmpeg
uses: docker/metadata-action@v5
with:
images: xhofe/alist
images: haoweil/alist
flavor: |
suffix=-ffmpeg
tags: |
Expand All @@ -43,24 +45,7 @@ jobs:
type=ref,event=tag
type=ref,event=pr
type=raw,value=beta,enable={{is_default_branch}}

- uses: actions/setup-go@v5
with:
go-version: 'stable'

- name: Cache Musl
id: cache-musl
uses: actions/cache@v4
with:
path: build/musl-libs
key: docker-musl-libs-v2

- name: Download Musl Library
if: steps.cache-musl.outputs.cache-hit != 'true'
run: bash build.sh prepare docker-multiplatform

- name: Build go binary
run: bash build.sh dev docker-multiplatform
type=raw,value=latest,enable={{is_default_branch}}

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
Expand All @@ -72,31 +57,31 @@ jobs:
if: github.event_name == 'push'
uses: docker/login-action@v3
with:
username: xhofe
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and push
id: docker_build
uses: docker/build-push-action@v6
with:
context: .
file: Dockerfile.ci
file: Dockerfile
push: ${{ github.event_name == 'push' }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x,linux/ppc64le,linux/riscv64
platforms: linux/amd64,linux/arm64

- name: Build and push with ffmpeg
id: docker_build_ffmpeg
uses: docker/build-push-action@v6
with:
context: .
file: Dockerfile.ci
file: Dockerfile
push: ${{ github.event_name == 'push' }}
tags: ${{ steps.meta-ffmpeg.outputs.tags }}
labels: ${{ steps.meta-ffmpeg.outputs.labels }}
build-args: INSTALL_FFMPEG=true
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x,linux/ppc64le,linux/riscv64
platforms: linux/amd64,linux/arm64

build_docker_with_aria2:
needs: build_docker
Expand Down
35 changes: 10 additions & 25 deletions .github/workflows/release_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ on:
push:
tags:
- 'v*'
workflow_dispatch:

jobs:
release_docker:
Expand All @@ -13,29 +14,13 @@ jobs:
- name: Checkout
uses: actions/checkout@v4

- uses: actions/setup-go@v5
with:
go-version: 'stable'

- name: Cache Musl
id: cache-musl
uses: actions/cache@v4
with:
path: build/musl-libs
key: docker-musl-libs-v2

- name: Download Musl Library
if: steps.cache-musl.outputs.cache-hit != 'true'
run: bash build.sh prepare docker-multiplatform

- name: Build go binary
run: bash build.sh release docker-multiplatform

- name: Docker meta
id: meta
uses: docker/metadata-action@v5
with:
images: xhofe/alist
images: haoweil/alist
flavor: |
latest=true

- name: Set up QEMU
uses: docker/setup-qemu-action@v3
Expand All @@ -46,25 +31,25 @@ jobs:
- name: Login to DockerHub
uses: docker/login-action@v3
with:
username: xhofe
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Build and push
id: docker_build
uses: docker/build-push-action@v6
with:
context: .
file: Dockerfile.ci
file: Dockerfile
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x,linux/ppc64le,linux/riscv64
platforms: linux/amd64,linux/arm64

- name: Docker meta with ffmpeg
id: meta-ffmpeg
uses: docker/metadata-action@v5
with:
images: xhofe/alist
images: haoweil/alist
flavor: |
latest=true
suffix=-ffmpeg,onlatest=true
Expand All @@ -74,12 +59,12 @@ jobs:
uses: docker/build-push-action@v6
with:
context: .
file: Dockerfile.ci
file: Dockerfile
push: true
tags: ${{ steps.meta-ffmpeg.outputs.tags }}
labels: ${{ steps.meta-ffmpeg.outputs.labels }}
build-args: INSTALL_FFMPEG=true
platforms: linux/amd64,linux/arm64,linux/arm/v7,linux/386,linux/arm/v6,linux/s390x,linux/ppc64le,linux/riscv64
platforms: linux/amd64,linux/arm64

release_docker_with_aria2:
needs: release_docker
Expand Down
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,13 @@ output/
*.json
/build
/data/
/data-local/
/tmp/
/log/
/lang/
/daemon/
/alist
/public/dist/*
/!public/dist/README.md

.VSCodeCounter
.VSCodeCounter
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,14 @@

English | [中文](./README_cn.md)| [日本語](./README_ja.md) | [Contributing](./CONTRIBUTING.md) | [CODE_OF_CONDUCT](./CODE_OF_CONDUCT.md)

## Fork Notice

This repository is a fork based on AList `v3.40`.

### Custom updates

- Accelerated single-file cloud drive direct-link retrieval.

## Features

- [x] Multiple storages
Expand Down
8 changes: 8 additions & 0 deletions README_cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,14 @@

[English](./README.md) | 中文 | [日本語](./README_ja.md) | [Contributing](./CONTRIBUTING.md) | [CODE_OF_CONDUCT](./CODE_OF_CONDUCT.md)

## Fork 说明

本仓库是基于 AList `v3.40` 的 Fork 版本。

### 自定义更新

- 加速单文件网盘直链获取。

## 功能

- [x] 多种存储
Expand Down
5 changes: 4 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@ version: '3.3'
services:
alist:
restart: always
build:
context: .
dockerfile: Dockerfile
volumes:
- '/etc/alist:/opt/alist/data'
ports:
Expand All @@ -13,4 +16,4 @@ services:
- UMASK=022
- TZ=UTC
container_name: alist
image: 'xhofe/alist:latest'
image: 'alist-local:latest'
Loading
Loading