Compare commits
No commits in common. "deploy_custom" and "main" have entirely different histories.
deploy_cus
...
main
@ -1,110 +0,0 @@
|
||||
name: Deploy Gitea Custom
|
||||
run-name: ${{ gitea.actor }} deploying Gitea
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- deploy_custom
|
||||
|
||||
env:
|
||||
CONTAINER_NAME: gitea-production
|
||||
VOLUME_NAME: gitea_data
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
runs-on: edge_pena_monitoring1
|
||||
|
||||
steps:
|
||||
- name: Check out repository code
|
||||
uses: http://gitea.pena:3000/PenaDevops/actions.git/checkout@v1
|
||||
|
||||
- name: Build container image
|
||||
run: |
|
||||
podman build \
|
||||
--build-arg GITEA_VERSION=${{ github.ref_name }} \
|
||||
-t gitea-custom:${{ github.ref_name }} .
|
||||
|
||||
- name: Remove old container
|
||||
run: |
|
||||
podman stop ${{ env.CONTAINER_NAME }} || true
|
||||
podman rm ${{ env.CONTAINER_NAME }} || true
|
||||
podman image prune -f
|
||||
|
||||
- name: Run new container with data persistence
|
||||
run: |
|
||||
# todo надо добавить по надобности другие переменные для гити
|
||||
podman run -d --name ${{ env.CONTAINER_NAME }} \
|
||||
-e GITEA__database__DB_TYPE=postgres \
|
||||
-e GITEA__database__HOST=${{ secrets.GITEA_DB_HOST }} \
|
||||
-e GITEA__database__NAME=${{ secrets.GITEA_DB_NAME }} \
|
||||
-e GITEA__database__USER=${{ secrets.GITEA_DB_USER }} \
|
||||
-e GITEA__database__PASSWD=${{ secrets.GITEA_DB_PASS }} \
|
||||
-e USER_UID=1000 \
|
||||
-e USER_GID=1000 \
|
||||
-v ${{ env.VOLUME_NAME }}:/data \
|
||||
-p 3001:3000 \
|
||||
-p 2223:22 \
|
||||
--restart unless-stopped \
|
||||
localhost/gitea-custom:${{ github.ref_name }}
|
||||
|
||||
#jobs:
|
||||
# build-and-deploy:
|
||||
# runs-on: ubuntu-latest
|
||||
#
|
||||
# steps:
|
||||
# - name: Checkout code
|
||||
# uses: actions/checkout@v4
|
||||
#
|
||||
# - name: Set up Docker Buildx
|
||||
# uses: docker/setup-buildx-action@v3
|
||||
#
|
||||
# - name: Build Docker image
|
||||
# run: |
|
||||
# docker build \
|
||||
# --build-arg GITEA_VERSION=${{ env.GITEA_VERSION }} \
|
||||
# -t gitea-custom:${{ github.sha }} \
|
||||
# -t gitea-custom:latest .
|
||||
#
|
||||
# - name: Stop existing container
|
||||
# run: |
|
||||
# docker stop ${{ env.CONTAINER_NAME }} || true
|
||||
#
|
||||
# - name: Backup current container (optional)
|
||||
# run: |
|
||||
# docker commit ${{ env.CONTAINER_NAME }} gitea-backup:$(date +%Y%m%d_%H%M%S) || true
|
||||
#
|
||||
# - name: Remove old container
|
||||
# run: |
|
||||
# docker rm ${{ env.CONTAINER_NAME }} || true
|
||||
#
|
||||
# - name: Run new container with data persistence
|
||||
# env:
|
||||
# DB_HOST: ${{ secrets.GITEA_DB_HOST }}
|
||||
# DB_USER: ${{ secrets.GITEA_DB_USER }}
|
||||
# DB_PASS: ${{ secrets.GITEA_DB_PASS }}
|
||||
# DB_NAME: ${{ secrets.GITEA_DB_NAME }}
|
||||
# run: |
|
||||
# # todo надо добавить по надобности другие переменные для гити
|
||||
# docker run -d --name ${{ env.CONTAINER_NAME }} \
|
||||
# -e GITEA__database__DB_TYPE=postgres \
|
||||
# -e GITEA__database__HOST=${{ secrets.GITEA_DB_HOST }} \
|
||||
# -e GITEA__database__NAME=${{ secrets.GITEA_DB_NAME }} \
|
||||
# -e GITEA__database__USER=${{ secrets.GITEA_DB_USER }} \
|
||||
# -e GITEA__database__PASSWD=${{ secrets.GITEA_DB_PASS }} \
|
||||
# -e USER_UID=1000 \
|
||||
# -e USER_GID=1000 \
|
||||
# -v ${{ env.VOLUME_NAME }}:/data \
|
||||
# -p 3000:3000 \
|
||||
# -p 2222:22 \
|
||||
# --restart unless-stopped \
|
||||
# gitea-custom:latest
|
||||
#
|
||||
# - name: Wait for Gitea to start
|
||||
# run: |
|
||||
# sleep 30
|
||||
#
|
||||
# - name: Verify container is running
|
||||
# run: |
|
||||
# docker ps -a
|
||||
# docker logs ${{ env.CONTAINER_NAME }} --tail 20
|
||||
# docker inspect ${{ env.CONTAINER_NAME }} --format='{{.State.Status}}'
|
||||
34
Dockerfile
34
Dockerfile
@ -1,45 +1,39 @@
|
||||
# Build stage
|
||||
FROM docker.io/library/golang:1.23-alpine3.20 AS build-env
|
||||
|
||||
ARG GOPROXY=https://proxy.golang.org,direct
|
||||
ENV GOPROXY=${GOPROXY}
|
||||
ENV GOPRIVATE=
|
||||
ENV GONOSUMDB=*
|
||||
ARG GOPROXY
|
||||
ENV GOPROXY=${GOPROXY:-direct}
|
||||
|
||||
ARG GITEA_VERSION=deploy_custom
|
||||
ARG GITEA_VERSION
|
||||
ARG TAGS="sqlite sqlite_unlock_notify"
|
||||
ENV TAGS="bindata timetzdata $TAGS"
|
||||
ARG CGO_EXTRA_CFLAGS
|
||||
|
||||
# Build deps
|
||||
RUN apk --no-cache add \
|
||||
build-base \
|
||||
git \
|
||||
nodejs \
|
||||
npm \
|
||||
ca-certificates \
|
||||
&& rm -rf /var/cache/apk/* \
|
||||
&& update-ca-certificates
|
||||
&& rm -rf /var/cache/apk/*
|
||||
|
||||
RUN git config --global http.postBuffer 1048576000 \
|
||||
&& git config --global http.lowSpeedLimit 0 \
|
||||
&& git config --global http.lowSpeedTime 999999
|
||||
|
||||
COPY go.mod go.sum ./
|
||||
RUN go mod download
|
||||
RUN npm --version
|
||||
|
||||
# Setup repo
|
||||
COPY . ${GOPATH}/src/code.gitea.io/gitea
|
||||
WORKDIR ${GOPATH}/src/code.gitea.io/gitea
|
||||
|
||||
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi
|
||||
|
||||
RUN for i in {1..3}; do \
|
||||
make clean-all build && break || \
|
||||
(echo "Attempt $i failed, retrying in 5 seconds..." && sleep 5); \
|
||||
done
|
||||
# Checkout version if set
|
||||
RUN if [ -n "${GITEA_VERSION}" ]; then git checkout "${GITEA_VERSION}"; fi \
|
||||
&& make clean-all build
|
||||
|
||||
# Begin env-to-ini build
|
||||
RUN go build contrib/environment-to-ini/environment-to-ini.go
|
||||
|
||||
# Copy local files
|
||||
COPY docker/root /tmp/local
|
||||
|
||||
# Set permissions
|
||||
RUN chmod 755 /tmp/local/usr/bin/entrypoint \
|
||||
/tmp/local/usr/local/bin/gitea \
|
||||
/tmp/local/etc/s6/gitea/* \
|
||||
|
||||
Loading…
Reference in New Issue
Block a user