Skip to content

Commit

Permalink
update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
Yohann0617 committed Nov 15, 2024
1 parent 498d54b commit a3d9479
Show file tree
Hide file tree
Showing 2 changed files with 72 additions and 25 deletions.
42 changes: 33 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,33 +2,42 @@

# oci-helper

> 一个基于 Oracle OCI SDK 开发的WEB端可视化甲骨文云助手,目前实现的功能有:支持添加多个租户配置、查询租户实例信息、根据多个CIDR网段更换实例公共IP、多租户枪机等功能。
> 一个基于 Oracle OCI SDK 开发的WEB端可视化甲骨文云助手,目前实现的功能有:支持添加多个租户配置、查询租户实例信息、根据多个CIDR网段更换实例公共IP、多租户抢机、断点续抢等功能。
## 注意事项及免责声明
- 因开机、换IP频率过高而导致的封号本人概不负责。
- 开发此项目纯属个人爱好,无后门,放心使用。
- 强烈建议不要裸HTTP访问,应使用Nginx反向代理配置HTTPS访问。
- 建议使用密钥登录服务器,防止服务器被SSH爆破导致API数据及密钥泄露。

## 核心功能

1. 同时管理多个租户配置信息。
1. 同时管理多个租户配置信息,支持模糊搜索、状态筛选
2. 根据多个CIDR网段更换实例公共IP,遇到请求频繁等异常会直接忽略,不影响下一次执行,直至更换到指定IP段的IP。
3. 多租户同时开机,后台一直运行,直至开机成功。
4. 支持断点续抢,抢机任务保存在数据库,服务重启会继续执行抢机任务,无需重复配置。
4. 支持断点续抢,配置以及抢机任务都保存在本地数据库,服务重启会继续执行抢机任务,无需重复配置。

## 如何部署

推荐docker部署,出于安全考虑建议使用Nginx反向代理配置HTTPS访问。

### 1. 新建目录
创建密钥文件存放目录,新增oci配置时只需输入密钥文件名称即可,默认会加上这个目录全路径。
```bash
mkdir -p /app/oci-helper/keys
mkdir -p /app/oci-helper/keys && cd /app/oci-helper
```

### 2. 拷贝文件
### 2. 下载文件

复制`application.yml``oci-helper.db``/app/oci-helper`目录下,并修改`application.yml`部分配置。
1. 下载`Releases`中最新的`application.yml``oci-helper.db`这两个文件到`/app/oci-helper`目录下,并修改`application.yml`部分配置。
2. 如不使用 docker 部署则再下载一个`ocihelper-0.0.1.jar`文件到`/app/oci-helper`目录下,直接`nohup java -jar ocihelper-0.0.1.jar &`运行即可(前提是环境上要有`jre8``jdk8`以上的环境)。

### 3. docker拉取镜像直接运行
### 3. docker部署

需提前安装docker环境,支持arm64、amd64架构。

### 3.1 方式一

docker直接运行:

```bash
docker run -d --name oci-helper --restart=always \
-p 8818:8818 \
Expand All @@ -38,6 +47,21 @@ docker run -d --name oci-helper --restart=always \
ghcr.io/yohann0617/oci-helper:master
```

### 3.2 方式二

下载`Releases`中最新的`docker-compose.yml``/app/oci-helper`目录下,运行以下命令:

```bash
docker compose up -d
```

更新最新镜像:

```bash
docker compose pull && docker compose up -d
```


## 页面展示

![image.png](https://pic1.58cdn.com.cn/nowater/webim/big/n_v26a2f3e2cd0ea4ac787723191f4f32f36.png)
Expand Down
55 changes: 39 additions & 16 deletions README_EN.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,43 +2,66 @@

# oci-helper

> A web-based visual Oracle Cloud Assistant developed based on Oracle OCI SDK. Currently implemented functions include: support for adding multiple tenant configurations, querying tenant instance information, changing instance public IP according to multiple CIDR network segments, multi-tenant gun machine and other functions.
> A web-based visual Oracle Cloud Assistant developed based on Oracle OCI SDK. Currently implemented functions include: support for adding multiple tenant configurations, querying tenant instance information, changing instance public IP according to multiple CIDR network segments, multi-tenant grabbing, breakpoint resumption, etc.
## Notes and Disclaimer
- I am not responsible for account suspension due to high frequency of booting and changing IP.
- The development of this project is purely personal hobby, no backdoor, and safe to use.
- It is strongly recommended not to use naked HTTP access, and HTTPS access should be configured using Nginx reverse proxy.
- It is recommended to use a key to log in to the server to prevent the server from being blasted by SSH, resulting in API data and key leakage.

## Core functions

1. Manage multiple tenant configuration information at the same time.
2. Change instance public IP according to multiple CIDR network segments. If there are abnormalities such as frequent requests, they will be ignored directly and will not affect the next execution until the IP of the specified IP segment is changed.
3. Multiple tenants are started at the same time, and the background keeps running until the startup is successful.
4. Support breakpoint continuation, the gun machine task is saved in the database, the service restart will continue to execute the machine task, no need to repeat the configuration.
1. Manage multiple tenant configuration information at the same time, support fuzzy search and status filtering.
2. Change the instance public IP according to multiple CIDR network segments. If there are abnormalities such as frequent requests, they will be ignored directly and will not affect the next execution until the IP in the specified IP segment is changed.
3. Multiple tenants start up at the same time, and the background runs until the startup is successful.
4. Support breakpoint continuation. The configuration and machine grabbing tasks are saved in the local database. The machine grabbing tasks will continue to be executed after the service restarts, without repeated configuration.

## How to deploy

Docker deployment is recommended. For security reasons, it is recommended to use Nginx reverse proxy to configure HTTPS access.

### 1. Create a new directory
Create a directory to store key files. When adding oci configuration, you only need to enter the key file name. The full path of this directory will be added by default.
Create a directory for storing key files. When adding oci configuration, you only need to enter the key file name. The full path of this directory will be added by default.
```bash
mkdir -p /app/oci-helper/keys
mkdir -p /app/oci-helper/keys && cd /app/oci-helper
```

### 2. Copy files
### 2. Download files

1. Download the latest `application.yml` and `oci-helper.db` files in `Releases` to the `/app/oci-helper` directory, and modify some configurations of `application.yml`.
2. If you do not use docker deployment, download another `ocihelper-0.0.1.jar` file to the `/app/oci-helper` directory, and run it directly with `nohup java -jar ocihelper-0.0.1.jar &` (the prerequisite is that the environment must have `jre8` or `jdk8` or above).

### 3. Docker deployment

Copy `application.yml` and `oci-helper.db` to the `/app/oci-helper` directory, and modify some configurations of `application.yml`.
The docker environment needs to be installed in advance, supporting arm64 and amd64 architectures.

### 3. Pull the image from docker and run it directly
### 3.1 Method 1

The docker environment needs to be installed in advance. The image supports arm64 and amd64 architectures.
Run directly with docker:

```bash
docker run -d --name oci-helper --restart=always \
-p 8818:8818 \
-v /app/oci-helper/application.yml:/app/oci-helper/application.yml \
-v /app/oci-helper/oci-helper.db:/app/oci-helper/oci-helper.db \
-v /app/oci-helper/keys:/app/oci-helper/keys \
ghcr.io/yohann0617/oci-helper:master
```
ghcr.io/yohann0617/oci-helper:master
```

### 3.2 Method 2

Download the latest `docker-compose.yml` in `Releases` to the `/app/oci-helper` directory and run the following command:

```bash
docker compose up -d
```

Update the latest image:

```bash
docker compose pull && docker compose up -d
```

## Page display
## Page display

![image.png](https://pic1.58cdn.com.cn/nowater/webim/big/n_v26a2f3e2cd0ea4ac787723191f4f32f36.png)

Expand Down

0 comments on commit a3d9479

Please sign in to comment.