This commit is contained in:
@ -15,5 +15,19 @@ jobs:
|
|||||||
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }} .
|
run: git clone ${{ gitea.server_url }}/${{ gitea.repository }} .
|
||||||
- name: List files
|
- name: List files
|
||||||
run: ls -la
|
run: ls -la
|
||||||
- name: docker command
|
- name: Stop running containers
|
||||||
run: docker ps -a
|
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
|
||||||
22
Dockerfile
Normal file
22
Dockerfile
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
# 使用官方轻量级 Python 基础镜像
|
||||||
|
FROM python:3.10-slim
|
||||||
|
|
||||||
|
# 设置工作目录(容器内路径)
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# 将项目文件复制到容器中
|
||||||
|
COPY . /app
|
||||||
|
|
||||||
|
# (可选)如果你有 requirements.txt,则先复制并安装依赖
|
||||||
|
RUN if [ -f requirements.txt ]; then \
|
||||||
|
pip install --no-cache-dir -r requirements.txt; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 暴露服务端口(例如 Flask / FastAPI 可监听 8000)
|
||||||
|
EXPOSE 8000
|
||||||
|
|
||||||
|
# 设置环境变量(防止 Python 缓存文件)
|
||||||
|
ENV PYTHONUNBUFFERED=1
|
||||||
|
|
||||||
|
# 启动命令
|
||||||
|
CMD ["python", "main.py"]
|
||||||
@ -0,0 +1,14 @@
|
|||||||
|
version: "3.8"
|
||||||
|
|
||||||
|
services:
|
||||||
|
app:
|
||||||
|
build: .
|
||||||
|
container_name: python_app
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- "8000:8000"
|
||||||
|
environment:
|
||||||
|
- PYTHONUNBUFFERED=1
|
||||||
|
volumes:
|
||||||
|
- .:/app
|
||||||
|
command: python main.py
|
||||||
|
|||||||
Reference in New Issue
Block a user