升级了安装脚本,更正了文档和一些链接 #41

Merged
mengning merged 2 commits from custom/devstar into main 2025-12-25 01:56:33 +00:00
5 changed files with 44 additions and 79 deletions

View File

@@ -941,6 +941,7 @@ controller-manager-debug: go-check
.PHONY: devstar
devstar:
@sudo chmod 666 /var/run/docker.sock
@if docker pull devstar.cn/devstar/devstar-dev-container:v1.0; then \
docker tag devstar.cn/devstar/devstar-dev-container:v1.0 devstar.cn/devstar/devstar-dev-container:latest && \
echo "Successfully pulled devstar.cn/devstar/devstar-dev-container:v1.0 taged to latest"; \

View File

@@ -19,11 +19,23 @@ This project has been
## Building
> 如果您是在Windows环境下请在cmd命令行下先运行如下命令`wsl --install Ubuntu`
在Ubuntu下安装依赖开发工具
```bash
sudo apt-get update
sudo apt install -y build-essential
sudo apt-get install -y docker.io
```
Build devstar-studio:latest From the root of the source tree, run::
```
git clone https://devstar.cn/devstar/devstar.git && cd devstar
make devstar # Build devstar-studio:latest
```
or Build a binary file named `gitea` From the root of the source tree, run:
TAGS="bindata" make build
@@ -53,32 +65,18 @@ public/assets/install.sh logs
# 停止并删除devstar-studio容器
public/assets/install.sh clean
# 删除所有容器
sudo docker stop $(docker ps -aq) && sudo docker rm -f $(docker ps -aq)
sudo docker stop $(sudo docker ps -aq) && sudo docker rm -f $(sudo docker ps -aq)
```
or, After building, a binary file named `gitea` will be generated in the root of the source tree by default. To run it, use:
./gitea web
> [!NOTE]
> devcontainer相关功能不能在localhost域名下正常工作调试环境请在custom/conf/app.ini中修改为IP地址
## Contributing
Expected workflow is: Fork -> Patch -> Push -> Pull Request
如果您是在Windows环境下请在cmd命令行下先运行如下命令
```
wsl --install -d Ubuntu && wsl --setdefault Ubuntu
```
在Ubuntu下使用容器化开发环境
```bash
sudo apt install -y build-essential
```
在DevStar Git仓库创建分支
```bash
@@ -89,10 +87,6 @@ git checkout -b YOUR_BRANCH_NAME
make devstar # Build devstar-studio:latest
public/assets/install.sh start --image=devstar-studio:latest
# 镜像方式安装验证
make devstar # Build devstar-studio:latest
public/assets/install.sh start --image=devstar-studio:latest
# 提交代码
git add FILES
git commit -m "commit log"

View File

@@ -37,36 +37,16 @@ failure() {
echo -e "${RED}$1${NC}"
}
# Function to add iproute
function ensure_ip_tool {
if ! command -v ip &> /dev/null; then
echo "检测到缺失 'ip' 命令,正在尝试安装 iproute2..."
OS_ID=$(grep '^ID=' /etc/os-release | cut -d= -f2 | tr -d '"')
case $OS_ID in
ubuntu|debian)
sudo apt-get update && sudo apt-get install -y iproute2
;;
centos|fedora|rhel)
sudo yum install -y iproute
;;
*)
echo "无法自动安装 iproute2"
exit 1
;;
esac
fi
}
# Function to create docker data volume
create_volume() {
local volume_name="${1:-$DATA_VOLUME}"
if docker volume inspect "$volume_name" >/dev/null 2>&1; then
if sudo docker volume inspect "$volume_name" >/dev/null 2>&1; then
echo "检测到数据卷 '$volume_name' 已存在" >&2
return 0
fi
if docker volume create "$volume_name"; then
if sudo docker volume create "$volume_name"; then
echo "数据卷 '$volume_name' 创建成功"
return 0
else
@@ -79,20 +59,20 @@ delete_volume() {
local volume_name="${1:-$DATA_VOLUME}"
# 检查数据卷是否存在
if ! docker volume inspect "$volume_name" >/dev/null 2>&1; then
if ! sudo docker volume inspect "$volume_name" >/dev/null 2>&1; then
echo "数据卷 '$volume_name' 不存在" >&2
return 1
fi
# 执行删除
if docker volume rm "$volume_name" 2>/dev/null; then
if sudo docker volume rm "$volume_name" 2>/dev/null; then
echo "Docker数据卷 '$volume_name' 已删除"
return 0
else
echo "删除失败!尝试强制删除..." >&2
# 尝试强制删除
if docker volume rm -f "$volume_name" 2>/dev/null; then
if sudo docker volume rm -f "$volume_name" 2>/dev/null; then
echo "Docker数据卷 '$volume_name' 已强制删除"
return 0
else
@@ -110,29 +90,22 @@ function install_dependencies {
case $OS_ID in
ubuntu|debian)
# 检查是否需要更新
if ! command -v docker &> /dev/null || ! command -v ip &> /dev/null; then
sudo apt-get update
fi
# 检查 Docker 是否已安装
if ! command -v docker &> /dev/null
then
if ! command -v docker &> /dev/null; then
echo "Installing Docker..."
# 更新包索引
sudo apt-get update
# 安装 Docker
sudo apt-get install -y docker.io
echo "Docker Installed"
else
echo "Docker Installed, $(docker --version)"
fi
;;
centos)
# sudo yum update -y
# sudo yum install -y epel-release
# sudo yum groupinstall -y "Development Tools"
# sudo yum install -y yaml-cpp yaml-cpp-devel
;;
fedora)
# sudo dnf update -y
# sudo dnf group install -y "Development Tools"
# sudo dnf install -y yaml-cpp yaml-cpp-devel
fi
if ! command -v ip &> /dev/null; then
sudo apt-get install -y iproute2
fi
;;
*)
failure "Unsupported OS: $OS_ID"
@@ -145,31 +118,30 @@ function install_dependencies {
function install {
install_dependencies
if sudo docker pull mengning997/devstar-studio:$VERSION; then
sudo docker tag mengning997/devstar-studio:$VERSION devstar.cn/devstar/devstar-studio:$VERSION
success "Successfully pulled mengning997/devstar-studio:$VERSION renamed to devstar.cn/devstar/devstar-studio:$VERSION"
sudo docker tag mengning997/devstar-studio:$VERSION devstar.cn/devstar/devstar-studio:latest
success "Successfully pulled mengning997/devstar-studio:$VERSION renamed to devstar.cn/devstar/devstar-studio:latest"
else
sudo docker pull devstar.cn/devstar/devstar-studio:$VERSION
success "Successfully pulled devstar.cn/devstar/devstar-studio:$VERSION"
sudo docker pull devstar.cn/devstar/devstar-studio:latest
success "Successfully pulled devstar.cn/devstar/devstar-studio:latest"
fi
if sudo docker pull mengning997/webterminal:$VERSION; then
sudo docker tag mengning997/webterminal:$VERSION devstar.cn/devstar/webterminal:$VERSION
success "Successfully pulled mengning997/webterminal:$VERSION renamed to devstar.cn/devstar/webterminal:$VERSION"
sudo docker tag mengning997/webterminal:$VERSION devstar.cn/devstar/webterminal:latest
success "Successfully pulled mengning997/webterminal:$VERSION renamed to devstar.cn/devstar/webterminal:latest"
else
sudo docker pull devstar.cn/devstar/webterminal:$VERSION
success "Successfully pulled devstar.cn/devstar/webterminal:$VERSION"
sudo docker pull devstar.cn/devstar/webterminal:latest
success "Successfully pulled devstar.cn/devstar/webterminal:latest"
fi
if sudo docker pull mengning997/act_runner:$VERSION; then
sudo docker tag mengning997/act_runner:$VERSION devstar.cn/devstar/act_runner:$VERSION
success "Successfully pulled mengning997/act_runner:$VERSION renamed to devstar.cn/devstar/act_runner:$VERSION"
sudo docker tag mengning997/act_runner:$VERSION devstar.cn/devstar/act_runner:latest
success "Successfully pulled mengning997/act_runner:$VERSION renamed to devstar.cn/devstar/act_runner:latest"
else
sudo docker pull devstar.cn/devstar/act_runner:$VERSION
success "Successfully pulled devstar.cn/devstar/act_runner:$VERSION"
sudo docker pull devstar.cn/devstar/act_runner:latest
success "Successfully pulled devstar.cn/devstar/act_runner:latest"
fi
}
# Function to start
function start {
ensure_ip_tool
if [[ -z "$IMAGE_STR" ]]; then
install
fi
@@ -224,7 +196,7 @@ function stop {
sudo docker stop $(docker ps -a --filter "name=$(cat "$CONTAINER_FILE")" -q) && \
sudo docker rm -f $(docker ps -a --filter "name=$(cat "$CONTAINER_FILE")" -q)
fi
rm -rf $CONTAINER_FILE
sudo rm -rf $CONTAINER_FILE
fi
if [ $(docker ps -a --filter "name=^/webterminal-" -q | wc -l) -gt 0 ]; then
sudo docker stop $(docker ps -a --filter "name=^/webterminal-" -q) && sudo docker rm -f $(docker ps -a --filter "name=^/webterminal-" -q)
@@ -239,7 +211,6 @@ function logs {
# 查看devstar-studio容器的运行日志
echo "=== 容器日志:$(cat "$CONTAINER_FILE") ==="
sudo docker logs $(cat "$CONTAINER_FILE")
}
# Function to clean
@@ -249,8 +220,7 @@ function clean {
DATA_VOLUME=$(cat "$DATA_VOLUME_FILE")
read -p "警告:即将永久删除数据卷 $DATA_VOLUME 'YES' 确认: " confirm
if [[ "$confirm" == "YES" ]]; then
rm -rf $DATA_VOLUME_FILE
delete_volume "$DATA_VOLUME"
delete_volume "$DATA_VOLUME" && sudo rm -rf "$DATA_VOLUME_FILE"
fi
fi
}

View File

@@ -1,4 +1,4 @@
<a target="_blank" rel="noopener noreferrer" href="https://www.mengning.com.cn"> &copy;Mengning Software </a>. 2024-2025 All rights reserved.
<a target="_blank" rel="noopener noreferrer" href="https://mengning.com.cn"> &copy;Mengning Software </a>. 2024-2025 All rights reserved.
{{if BeianNumber}}
<a id="beian" href="https://beian.miit.gov.cn/" target="_blank" rel="noopener noreferrer">{{BeianNumber}}</a>
{{end}}

View File

@@ -8,7 +8,7 @@
<div class="ui attached segment">
{{template "base/alert" .}}
<p>{{ctx.Locale.Tr "install.k8s_helper" "https://www.mengning.com/src/devstar/install/install-k8s"}}</p>
<p>{{ctx.Locale.Tr "install.k8s_helper" "https://mengning.com.cn/src/devstar"}}</p>
<form class="ui form" action="{{AppSubUrl}}/" method="post">
<!-- Database Settings -->