linux-amd64.Dockerfile 1.0 KB

12345678910111213141516171819202122232425
  1. # CentOS 7 comes with GLIBC 2.17 which is the most compatible (the lowest)
  2. # version available in a not-too-oudated Linux distribution.
  3. FROM centos:7
  4. RUN yum install --quiet --assumeyes git wget gcc pam-devel zip
  5. # Install Go
  6. RUN wget --quiet https://go.dev/dl/go1.17.7.linux-amd64.tar.gz -O go.linux-amd64.tar.gz
  7. RUN sh -c 'echo "02b111284bedbfa35a7e5b74a06082d18632eff824fd144312f6063943d49259 go.linux-amd64.tar.gz" | sha256sum --check --status'
  8. RUN tar -C /usr/local -xzf go.linux-amd64.tar.gz
  9. ENV PATH="/usr/local/go/bin:${PATH}"
  10. # Install Task
  11. RUN wget --quiet https://github.com/go-task/task/releases/download/v3.10.0/task_linux_amd64.tar.gz -O task_linux_amd64.tar.gz
  12. RUN sh -c 'echo "f78c861e6c772a3263e478da7ae3223e10c2bc6b7b0728717d30db35d463f4b9 task_linux_amd64.tar.gz" | sha256sum --check --status'
  13. RUN tar -xzf task_linux_amd64.tar.gz \
  14. && mv task /usr/local/bin/task
  15. # Build bianry
  16. WORKDIR /gogs.io/gogs
  17. COPY . .
  18. RUN TAGS="cert pam" task build
  19. # Pack release archives
  20. RUN task release
  21. RUN tar -C release -czf release/gogs.tar.gz gogs