OpenSearch CLI yang dibangun di Nest,
kerangka kerja Node.js progresif untuk membangun aplikasi sisi server yang efisien dan skalabel.
Opensearch-cli resmi juga tersedia
npm install -g @andreafspeziale/os-cli
yarn global add @andreafspeziale/os-cli
pnpm add -g @andreafspeziale/os-cli
docker pull andreafspeziale/os-cli
docker run --rm --env-file .env andreafspeziale/os-cli
Jika menggunakan gambar OpenSearch lokal (buruh pelabuhan) seperti yang disertakan dalam file
docker-compose
pastikan untuk mengatur dengan benar opsinetwork
dan variabel envOS_HOST
(OS_HOST=http://opensearch:9200) pada perintah di atas (docker run --rm --env-file .env --network os-cli_default andreafspeziale/os-cli
)
Jika menggunakan CLI yang di-docker dan Anda perlu menggunakan payload json sebagai input, Anda harus memasang folder ke dalam konteks eksekusi CLI (misalnya
docker run --rm --env-file .env -v ./recipes:/opt/os-cli/recipes --network os-cli_default andreafspeziale/os-cli dq -i books -f recipes/query.json
)
Untuk mencicipi CLI dengan sangat cepat menggunakan npx
atau setelah menginstalnya Anda dapat menelurkan OpenSearch secara lokal dengan menggunakan file docker-compose
yang disertakan dalam repositori:
git clone [email protected]:andreafspeziale/os-cli.git
cd os-cli
docker compose up -d
export OS_CONNECTION_METHOD=local
npx @andreafspeziale/os-cli il
atau os-cli il
Seperti file docker-compose
ada juga beberapa resep yang disertakan dalam repositori:
npx @andreafspeziale/os-cli i cr -i books -f ./recipes/create-index.json
atau os-cli i cr -i books -f ./recipes/create-index.json
npx @andreafspeziale/os-cli d cr -i books -f ./recipes/create-documents.json
atau os-cli d cr -i books -f ./recipes/create-documents.json
npx @andreafspeziale/os-cli dq -i books -f ./recipes/query.json
atau os-cli dq -i books -f ./recipes/query.json
Untuk mode proksi, periksa aws-sigv4-proxy
CLI memanfaatkan variabel lingkungan untuk mengatur opsi koneksi dan logging sekali saja.
Nama | Diperlukan | Bawaan | Keterangan | Nilai-nilai |
---|---|---|---|---|
OS_HOST | ketika OS_CONNECTION_METHOD BUKAN lokal atau proxy | http://localhost:(9200 or 8080) | Host koneksi OpenSearch | - |
OS_CONNECTION_METHOD | Ya | - | Bagaimana Anda ingin terhubung ke OpenSearch | [ local , proxy , serviceAccount , credentials ] |
AWS_REGION | hanya jika OS_CONNECTION_METHOD BUKAN lokal atau proxy | - | Wilayah koneksi OpenSearch AWS | - |
AWS_ROLE_ARN | hanya jika OS_CONNECTION_METHOD adalah ServiceAccount | - | ARN peran AWS untuk mengambil koneksi peran | - |
AWS_WEB_IDENTITY_TOKEN_FILE | hanya jika OS_CONNECTION_METHOD adalah ServiceAccount | - | File token identitas web AWS | - |
AWS_ACCESS_KEY_ID | hanya jika OS_CONNECTION_METHOD adalah kredensial | - | ID kunci akses AWS untuk koneksi kanonik | - |
AWS_SECRET_ACCESS_KEY | hanya jika OS_CONNECTION_METHOD adalah kredensial | - | Kunci akses rahasia AWS untuk koneksi kanonik | - |
LOGGER_LEVEL | TIDAK | debug | Log mana yang akan ditampilkan | [ silent , error , warn , info , http , verbose , debug ] |
LOGGER_PRETTY | TIDAK | true | Boolean untuk mengaktifkan/menonaktifkan pemformatan log | true , false |
LOGGER_REDACT | TIDAK | '' | Menghapus kata-kata tertentu dari log | - |
Untuk instance OpenSearch lokal buruh pelabuhan, yang perlu Anda lakukan adalah:
export OS_CONNECTION_METHOD=local
Sebaliknya untuk metode koneksi AWS kanonik, tanda terima beserta nilai Anda adalah:
export OS_HOST=
export OS_CONNECTION_METHOD=credentials
export AWS_REGION=
export AWS_ACCESS_KEY_ID=
export AWS_SECRET_ACCESS_KEY=
Setelah mengkloning repositori:
cd os-cli
cp ./env/.env.development ./env
docker compose up -d
pnpm install
Saya pribadi lebih suka membangun di jendela terminal dan menjalankan versi yang dikompilasi secara terpisah seperti:
pnpm build --watch
pnpm start:prod
atau node dist/os-cli.js
os-cli berlisensi MIT.