gradleとリモート サーバーとのやり事例をルート化します – クライアントはログ、接続ダイアログなど
使用方法
vi ~/.ssh/config
# 環境
Host xxx.dev.iuin
HostName 1.0.1.1
User root
Port 2222
IdentityFile ~/.ssh/id_ed25519_iu
ssh-copy-id -i ~/.ssh/id_ed25519_iu xxx.dev.iuin
gradleを結合する
- プロジェクトのルートディレクトリにある Build.gradleファイル
// 项目根目录下的build.gradle文件中添加以下内容
plugins {
id 'io.github.iuin8.remote' version '0.1.36'
}
group = 'com.xxx.xxx'
version = '3.0.0'
- ルート ディレクトリのパスの settings.gradleファイルに、以下のコンテンツを追加します。
// 项目根目录下的settings.gradle文件中添加以下内容
//gradle插件仓库
pluginManagement {
repositories {
//本地
mavenLocal()
//私服
maven {
url 'http://10.11.11.11:1111/repository/maven-public/'
allowInsecureProtocol = true
}
//国内镜像
maven {
url 'https://maven.aliyun.com/repository/public'
}
//gradle官方门户
gradlePluginPortal()
//备用
mavenCentral()
}
}
- 構成ファイル: <プロジェクトのルート>/remote-plugin/remote.yml
# 設定ファイル: {プロジェクトルートディレクトリ}/remote-plugin/remote.yml
# Remote plugin configuration example
# Supported placeholders:
# - ${service} : current Gradle project name
# - ${REMOTE_BASE_DIR} : value of remote.base.dir
# - ${remote.base.dir} : same as above
# Environment configurations
# Each environment can have its own settings
environments:
# Development environment configuration (from gradle-dev.properties)
dev:
remote:
server: xxx.dev.iuin
base:
dir: /data/xxx
# その他の環境。例:テスト環境、本番環境など
test:
remote:
server: xxx.test.iuin
base:
dir: /data/xxx
# Service ports configuration (previously in service-ports.json)
service:
ports:
order-service: 1111
start:
command: $REMOTE_BASE_DIR/$SERVICE_NAME/$SERVICE_NAME-start.sh
# command: sudo systemctl restart $SERVICE_NAME
env:
JAVA_TOOL_OPTIONS: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:3$SERVICE_PORT
# Configure log file pattern for logTask (logTo<Profile>)
# Default resolves to: ${REMOTE_BASE_DIR}/../logs/${service}.log
log:
filePattern: ${REMOTE_BASE_DIR}/../logs/${service}.log
- サンプルを公開
# bash ./gradlew :order-service:publish\(dev\) --info
bash ./gradlew :order-service:publish\(dev\)
# コマンドを実行します。
