diff --git a/.goreleaser.yml b/.goreleaser.yml index a697179f..b47c8082 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -20,6 +20,7 @@ build: - 386 - arm - arm64 + - riscv64 goarm: - 5 - 6 @@ -113,6 +114,24 @@ dockers: - "filebrowser/filebrowser:v{{ .Major }}-armv7" extra_files: - docker_config.json + - + dockerfile: Dockerfile.riscv64 + use: buildx + build_flag_templates: + - "--pull" + - "--label=org.opencontainers.image.created={{.Date}}" + - "--label=org.opencontainers.image.name={{.ProjectName}}" + - "--label=org.opencontainers.image.revision={{.FullCommit}}" + - "--label=org.opencontainers.image.version={{.Version}}" + - "--label=org.opencontainers.image.source={{.GitURL}}" + - "--platform=linux/riscv64" + goos: linux + goarch: riscv64 + image_templates: + - "filebrowser/filebrowser:{{ .Tag }}-riscv64" + - "filebrowser/filebrowser:v{{ .Major }}-riscv64" + extra_files: + - docker_config.json ## s6 based docker images - dockerfile: Dockerfile.s6 @@ -195,18 +214,21 @@ docker_manifests: - "filebrowser/filebrowser:{{ .Tag }}-arm64" - "filebrowser/filebrowser:{{ .Tag }}-armv6" - "filebrowser/filebrowser:{{ .Tag }}-armv7" + - "filebrowser/filebrowser:{{ .Tag }}-riscv64" - name_template: "filebrowser/filebrowser:{{ .Tag }}" image_templates: - "filebrowser/filebrowser:{{ .Tag }}-amd64" - "filebrowser/filebrowser:{{ .Tag }}-arm64" - "filebrowser/filebrowser:{{ .Tag }}-armv6" - "filebrowser/filebrowser:{{ .Tag }}-armv7" + - "filebrowser/filebrowser:{{ .Tag }}-riscv64" - name_template: "filebrowser/filebrowser:v{{ .Major }}" image_templates: - "filebrowser/filebrowser:v{{ .Major }}-amd64" - "filebrowser/filebrowser:v{{ .Major }}-arm64" - "filebrowser/filebrowser:v{{ .Major }}-armv6" - "filebrowser/filebrowser:v{{ .Major }}-armv7" + - "filebrowser/filebrowser:v{{ .Major }}-riscv64" ## s6 image manifests - name_template: "filebrowser/filebrowser:s6" image_templates: diff --git a/Dockerfile.riscv64 b/Dockerfile.riscv64 new file mode 100644 index 00000000..8fd9fe39 --- /dev/null +++ b/Dockerfile.riscv64 @@ -0,0 +1,15 @@ +FROM riscv64/alpine:edge +RUN apk --update add ca-certificates \ + mailcap \ + curl + +HEALTHCHECK --start-period=2s --interval=5s --timeout=3s \ + CMD curl -f http://localhost/health || exit 1 + +VOLUME /srv +EXPOSE 80 + +COPY docker_config.json /.filebrowser.json +COPY filebrowser /filebrowser + +ENTRYPOINT [ "/filebrowser" ] \ No newline at end of file