add workflow docker file
All checks were successful
Gitea Actions Demo / build-and-deploy (push) Successful in 14s

This commit is contained in:
konjacpotato
2025-11-05 21:05:58 +08:00
parent 2c8426d543
commit b4889fb3b7
3 changed files with 59 additions and 0 deletions

View File

@ -0,0 +1,33 @@
name: Gitea Actions Demo
run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀
on: [push]
jobs:
build-and-deploy:
runs-on: ubuntu-latest
container:
image: gitea/runner-images:ubuntu-latest
steps:
- run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event."
- run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!"
- run: echo "runner arch is ${{ runner.arch }}"
- name: Check out repository code
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }} .
- name: List files
run: ls -la
- name: Stop running containers
run: |
docker compose down || true
- name: Remove old image
run: |
IMAGE_NAME=$(basename "$PWD")
echo "Removing old image: $IMAGE_NAME"
docker images | grep "$IMAGE_NAME" && docker rmi -f $(docker images "$IMAGE_NAME" -q) || echo "No old image found."
- name: Build new image
run: |
docker build -t $(basename "$PWD"):latest .
- name: Start containers
run: |
docker compose up -d
- name: Show container status
run: docker ps

19
Dockerfile Normal file
View File

@ -0,0 +1,19 @@
# 使用官方轻量级 Python 基础镜像
FROM python:3.12-slim
# 设置工作目录(容器内路径)
WORKDIR /app
# 将项目文件复制到容器中
COPY . /app
# (可选)如果你有 requirements.txt则先复制并安装依赖
RUN if [ -f requirements.txt ]; then \
pip install --no-cache-dir -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/; \
fi
# 设置环境变量(防止 Python 缓存文件)
ENV PYTHONUNBUFFERED=1
# 启动命令
CMD ["python", "arlo.py"]

7
docker-compose.yml Normal file
View File

@ -0,0 +1,7 @@
version: "3.8"
services:
app:
image: arlo:latest
container_name: arlo
restart: always