- Combine Bun installs for opencode-ai and @oh-my-pi/pi-coding-agent - Make Makefile include .env optional and silence sed errors
63 lines
1.9 KiB
Makefile
63 lines
1.9 KiB
Makefile
# 引用 .env 文件中的变量(文件不存在时也不报错)
|
|
-include .env
|
|
export $(shell sed 's/=.*//' .env 2>/dev/null)
|
|
|
|
.PHONY: help build up down restart logs shell clean ssh
|
|
|
|
# 默认目标:显示帮助
|
|
help:
|
|
@echo "🛠️ Maven + Java + Bun 开发环境管理工具"
|
|
@echo "=================================================="
|
|
@echo "make build - 构建镜像"
|
|
@echo "make up - 启动容器 (后台模式)"
|
|
@echo "make down - 停止并移除容器"
|
|
@echo "make restart - 重启容器"
|
|
@echo "make logs - 查看容器日志"
|
|
@echo "make shell - 进入容器终端 (Bash)"
|
|
@echo "make ssh - 使用 SSH 连接容器 (测试连接)"
|
|
@echo "make clean - ⚠️ 深度清理 (移除容器、镜像和挂载的数据目录)"
|
|
@echo "=================================================="
|
|
@echo "当前配置:"
|
|
@echo " SSH端口: $(SSH_PORT)"
|
|
@echo " 代码路径: $(PROJECT_DIR)"
|
|
|
|
# 构建镜像
|
|
build:
|
|
@echo "📦 正在构建镜像 $(IMAGE_NAME):$(IMAGE_TAG)..."
|
|
@docker compose build
|
|
|
|
# 启动容器
|
|
up:
|
|
@echo "🚀 正在启动开发环境..."
|
|
@docker compose up -d
|
|
@echo "✅ 服务已启动!"
|
|
@echo " - SSH 连接: ssh -p $(SSH_PORT) root@localhost (密码: root)"
|
|
@echo " - Zed 连接: ssh://root@localhost:$(SSH_PORT)"
|
|
|
|
# 停止容器
|
|
down:
|
|
@echo "🛑 正在停止容器..."
|
|
@docker compose down
|
|
|
|
# 重启
|
|
restart: down up
|
|
|
|
# 查看日志
|
|
logs:
|
|
@docker compose logs -f
|
|
|
|
# 进入 Shell (通过 Docker exec)
|
|
shell:
|
|
@docker exec -it $(CONTAINER_NAME) bash
|
|
|
|
# SSH 连接测试
|
|
ssh:
|
|
@ssh -p $(SSH_PORT) -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null root@localhost
|
|
|
|
# 深度清理 (危险操作)
|
|
clean: down
|
|
@echo "⚠️ 正在清理..."
|
|
@read -p "确定要删除持久化数据目录 $(DATA_DIR) 吗? [y/N] " ans && [ $${ans:-N} = y ] || (echo "已取消"; exit 1)
|
|
@rm -rf $(DATA_DIR)
|
|
@echo "🧹 清理完成"
|