add workflow docker file
All checks were successful
Gitea Actions Demo / build-and-deploy (push) Successful in 14s
All checks were successful
Gitea Actions Demo / build-and-deploy (push) Successful in 14s
This commit is contained in:
33
.gitea/workflows/deploy-workflow.yml
Normal file
33
.gitea/workflows/deploy-workflow.yml
Normal 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
19
Dockerfile
Normal 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
7
docker-compose.yml
Normal file
@ -0,0 +1,7 @@
|
||||
version: "3.8"
|
||||
|
||||
services:
|
||||
app:
|
||||
image: arlo:latest
|
||||
container_name: arlo
|
||||
restart: always
|
||||
Reference in New Issue
Block a user