Files
act_runner/Dockerfile
dcsunny f1a473b362 chore(build): 配置 Go 模块代理并移除工作流文件
- 在 Dockerfile 中设置默认 GOPROXY 为阿里云镜像
- 在 Makefile 中配置 GOPROXY 环境变量
- 移除 .gitea/workflows 目录下的所有 CI/CD 工作流文件
- 删除 release-nightly.yml 工作流配置
- 删除 release-tag.yml 工作流配置
- 删除 test.yml 工作流配置
2026-01-30 11:35:52 +08:00

65 lines
1.3 KiB
Docker

### BUILDER STAGE
#
#
FROM golang:1.24-alpine AS builder
# Do not remove `git` here, it is required for getting runner version when executing `make build`
RUN apk add --no-cache make git
ARG GOPROXY
ENV GOPROXY=${GOPROXY:-https://mirrors.aliyun.com/goproxy/,direct}
COPY . /opt/src/act_runner
WORKDIR /opt/src/act_runner
RUN make clean && make build
### DIND VARIANT
#
#
FROM docker:28-dind AS dind
RUN apk add --no-cache s6 bash git tzdata
COPY --from=builder /opt/src/act_runner/act_runner /usr/local/bin/act_runner
COPY scripts/run.sh /usr/local/bin/run.sh
COPY scripts/s6 /etc/s6
VOLUME /data
ENTRYPOINT ["s6-svscan","/etc/s6"]
### DIND-ROOTLESS VARIANT
#
#
FROM docker:28-dind-rootless AS dind-rootless
USER root
RUN apk add --no-cache s6 bash git tzdata
COPY --from=builder /opt/src/act_runner/act_runner /usr/local/bin/act_runner
COPY scripts/run.sh /usr/local/bin/run.sh
COPY scripts/s6 /etc/s6
VOLUME /data
RUN mkdir -p /data && chown -R rootless:rootless /etc/s6 /data
ENV DOCKER_HOST=unix:///run/user/1000/docker.sock
USER rootless
ENTRYPOINT ["s6-svscan","/etc/s6"]
### BASIC VARIANT
#
#
FROM alpine AS basic
RUN apk add --no-cache tini bash git tzdata
COPY --from=builder /opt/src/act_runner/act_runner /usr/local/bin/act_runner
COPY scripts/run.sh /usr/local/bin/run.sh
VOLUME /data
ENTRYPOINT ["/sbin/tini","--","run.sh"]