カテゴリー
DockerとSripe CLIを使ってダッシュボードなしでオンライン決済を操作・管理する
※ 当ページには【広告/PR】を含む場合があります。
2022/06/25
Makefileでdocker-composeコマンドのショートカットコマンドセットの作り方
package.json
docker-compose.yml
make [サブコマンド]
echo:
echo 'HELLO, HOGE'
$ make echo
echo 'HELLO, HOGE'
HELLO, HOGE
make
echo:
@echo 'HELLO, HOGE'
@
$ make echo
HELLO, HOGE
#dockerコマンド(例)
run-mysql:
docker run -d --name my_mysql -e MYSQL_ROOT_PASSWORD=root mysql:latest
run-php:
docker run --rm -it --link my_mysql:db php:latest cat /etc/hosts
#docker-composeコマンド(例)
start:
docker-compose up -d
docker-compose exec app yarn serve
up:
docker-compose up -d
docker-compose exec app bash
down:
docker-compose down
Makefile:*: *** 分離記号を欠いています. 中止.
.editorconfig
[*]
charset = utf-8
indent_style = space
indent_size = 4
insert_final_newline = true
trim_trailing_whitespace = true
[*.md]
max_line_length = off
trim_trailing_whitespace = false
[*.yml]
indent_size = 2
[Makefile]
indent_style = tab
.editorconfig
Docker-composeを使ったStripe CLIの導入
$ docker run --rm -it stripe/stripe-cli:latest
Docker-composeにstripeコマンドを埋め込む
docker-compose.yml
version: '3'
services:
cli:
image: stripe/stripe-cli:latest
container_name: stripe_worker
environment:
STRIPE_API_KEY: ${STRIPE_API_KEY}
STRIPE_DEVICE_NAME: ${STRIPE_DEVICE_NAME}
command: --device-name=${STRIPE_DEVICE_NAME} --api-key=${STRIPE_API_KEY}
.env
STRIPE_API_KEY=sk_test_**********************
STRIPE_DEVICE_NAME=stripe-docker
STRIPE_API_KEY
STRIPE_DEVICE_NAME
stripe status
$ docker-compose run --rm cli status --verbose
✔ All services are online.
✔ API
✔ Dashboard
✔ Stripe.js
✔ Checkout.js
As of: June 25, 2022 @ 05:14AM +00:00
ダッシュボードの各遷移先URL一覧を表示する
$ docker-compose run --rm cli open --list
open quickly opens Stripe pages. To use, run 'stripe open <shortcut>'.
open supports the following shortcuts:
shortcut url
-------- ---------
api => https://stripe.com/docs/api
apiref => https://stripe.com/docs/api
cliref => https://stripe.com/docs/cli
dashboard => https://dashboard.stripe.com/test
#....中略
docs => https://stripe.com/docs
stripeのサブコマンド一覧を表示する
$ docker-compose run --rm cli resources
Available commands:
3d_secure
account_links
accounts
#...中略
usage_records
webhook_endpoints
Use "stripe [command] --help" for more information about a command.
Stripeコマンドで操作するはじめての操作〜新規顧客を作成する
お目当てのstripeサブコマンドを探す
ライブ(本番)モード:
https://dashboard.stripe.com/customers
テストモード:
https://dashboard.stripe.com/test/customers
stripe customers
stripe resources
$ docker-compose run --rm cli resources | grep customer
customer_balance_transactions
customers
stripe customers
--help
$ docker-compose run --rm cli customers --help
Usage:
stripe customers <operation> [parameters...]
Available Operations:
balance_transactions
create
create_funding_instructions
delete
delete_discount
list
list_payment_methods
retrieve
retrieve_payment_method
search
update
#...以下略
create
--help
$ docker-compose run --rm cli customers create --help
Usage:
stripe customers create [--param=value] [-d "nested[param]=value"]
Request Parameters:
--balance
--coupon
--description
--email
--invoice-prefix
--name
--next-invoice-sequence
--payment-method
--phone
--promotion-code
--source
--tax-exempt
--test-clock
Flags:
-c, --confirm Skip the warning prompt and automatically confirm the command being entered
--dark-style Use a darker color scheme better suited for lighter command-lines
-d, --data stringArray Data for the API request
-e, --expand stringArray Response attributes to expand inline
-h, --help help for create
-i, --idempotency string Set the idempotency key for the request, prevents replaying the same requests within 24 hours
--live Make a live request (default: test)
-s, --show-headers Show response headers
--stripe-account string Set a header identifying the connected account
-v, --stripe-version string Set the Stripe API version to use for your request
#...以下略
stripe customers create
$ docker-compose run --rm cli customers create \
--name 'ピヨだ ぽよオ' \
--email hogehoge@piyo.com
[顧客]
顧客リストの取得
stripe customers list
$ docker-compose run --rm cli customers list
{
"object": "list",
"data": [
{
"id": "cus_Lw0eNIRpVSayMX",
#...中略
"url": "/v1/customers"
}
$ docker-compose run --rm cli customers list --color off | jq '.data[] | {email:.email,name:.name}'
{
"email": "hogehoge@piyo.com",
"name": "ピヨだ ぽよオ"
}
--color off
まとめ
記事を書いた人
ナンデモ系エンジニア
主にAngularでフロントエンド開発することが多いです。 開発環境はLinuxメインで進めているので、シェルコマンドも多用しております。 コツコツとプログラミングするのが好きな人間です。
カテゴリー