サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
www.kwbtblog.com
最近Playwrightを試していたので、使い方を忘れてもまた思い出せるよう、Playwrightの使い方をメモしておこうと思います。 インストール npm install --save playwright Playwrightをインストールすると、同時にブラウザChromium・Firefox・Webkitもインストールされる デフォルトではPlaywrightから呼び出されるブラウザは、その時にインストールされたブラウザが使われる ブラウザをインストールせずPlaywrightのみをインストールし、ブラウザは別途インストールしたものを使用することも可能 しかし、Playwrightのバージョンとブラウザのバージョンは密接に関係があるため、Playwrightとブラウザは同時にインストールして、インストールしたブラウザを使うようにした方がよい 構成 Playwrightは下記クラスで構
認証機能付きReactサイトを手軽に作りたかったのですが、都度バックエンドを構築するのが面倒で諦めてました。 しかし、AWS Amplifyを使えば、手軽にバックエンドを構築できるのではと試してみました。 一通り欲しかった機能は試したので、再利用可能なように、ざっくり作り方をメモしておこうと思います。 公開サイトじゃないので、凝ったものではなく、必要最小限の下記機能を盛り込んだものになります。 ホスティング Basic認証 認証 認証者によるDynamoDBアクセス 認証者によるLambdaアクセス ドキュメント https://docs.amplify.aws/ ドキュメントが古いこともあるので、コマンドのヘルプも参照する。 amplify --help amplify [command] --help Amplify CLIインストール Amplify CLIを使って作業するので、まず
思い立ったらサクッとSPAサイトが作れたらいいなぁと思っていたのですが、Reactはちょっとしたサイトを作るにも大掛かりになってしまうので諦めていました。 しかし、最近ReactのRecoilを触り始めたのですが、Recoilを使うと、Reactも随分シンプルに書けるようになっていました。 フロントエンドの手軽さはReact+Recoilで解決できそうなので、後はバックエンドをサクッと作れれば夢が叶いそうです。 そこで、モバイルアプリのバックエンドをサクッと作れる方法として、「Google Firebase」と「AWS Amplify」をよく聞くので試してみました。 ここでは、それぞれを使ってみた感想を書こうと思います。 FirebaseとAmplifyがやってくれること Firebase、Amplify共に、バックエンドで面倒な、下記のような作業をやってくれます。 リソースの提供 ホステ
以前、AWS CloudFormationテンプレートを手書きしようとして挫折しました…。 www.kwbtblog.com その時学んだのは、CloudFormationテンプレートは人の手で書く類のものではなく、何かしらのツールを使って生成するものだなと。 そして、そのためのツールが、AmazonからAWS CDKという形で提供されていたので使ってみたのですが、めちゃ便利でした!! もうこれからは、AWSのリソース作成はコンソールやCLIで行わず、全部AWS CDKで作ろうかと思うくらい便利でした! 必要な時にサクッとAWS CDKを使えるよう、ここにAWS CDKの簡単な説明と基本的な使い方をメモしておこうと思います。 AWS CDKとは? AWS CDK(Cloud Development Kit)とは一言で言うと、CloudFormationテンプレートジェネレーターです。 Ty
シェルスクリプトで、JSONからデータを取り出すのにjqコマンドを使っています。 使い方をよく忘れるので、自分用使い方メモです。 基本 基本動作「標準入力から入力を受け取り、フィルターをかけて、標準出力に出力する」 .は入力値を表す フィルターはパイプ(|)でつなげていく フィルターはシングルクォーテーションでくくる フィルターにダブルクォーテーションを使う場合は、バックスラッシュでエスケープして入力する その他 単にJSON整形ツールとしても使える(jq '.') JSON文字列を生成できる テストサイト A playground for jq 配列 .[インデックス]でインデックスを指定して取り出す インデックスはマイナス値も使える インデックスは複数指定できる []は配列全体を展開する 展開した配列を配列に戻すには、全体を[]で囲む 展開した配列からパイプを介して配列に戻すことはでき
Go言語は、シンプルな関数を組み合わせてプログラミングをすることが多く、また、関数毎にエラーチェックが発生するので、全般的にコードが長くなりがちです。 ちょっとした事をしたい時でも、コードをそれなりに書く必要があるのですが、毎回ゼロから書くのは面倒なので、よくやる処理を自分コピペ用にメモしておこうと思います。 ここでは、Go言語で、ファイル(IO)を使って読み書きする方法の自分用メモを記載しました。 はじめに ioについて Go言語では、入出力はioパッケージとして抽象化されていて、ioパッケージを使って読み書きプログラムを記述します。 ファイルはio.Reader・io.Writerインターフェイスを持っているので、ioを使って記載された読み書きコードはそのまま使えます。 また、ファイルに限らず、他の入出力であっても、io.Reader・io.Writerインターフェイスを持っていれば、
Google Cloud Storageのサブディレクトリ一覧を、GCP Pythonライブラリを使って取得したかったのですが、 ハマったので、その経緯と方法のメモ書きです。 他の言語のライブラリも、Pythonライブラリ同様APIラッパーなので、応用可能かと思います。 NG 例 最初、下記の方法でサブディレクトリが取得できないかなと試してみましたがダメでした。 from google.cloud import storage client = storage.Clinet() bucket = client.get_bucket('xxxx') dirs = bucket.list_blobs(prefix="a/", delimiter="/") [print(x) for x in dirs] # "a/" ハマりポイント Gooble Cloud Storageも、AWS S3同様
Passport.jsを使う機会があったので、また必要になった時用のPassport.jsの使い方個人メモです。 Passport.jsとは Passport.jsとは、Node.js+Expressで作ったWebサイトに、ユーザーがログインできる、ユーザー認証を入れるためのライブラリ ユーザー認証の種類は、自分でユーザー管理する「ユーザーID+パスワード認証」だけでなく、GoogleやTwitterなどといったSNS認証など、様々な種類がある 各種の認証周りの実装はライブラリ化されていて、認証の仕組みを意識しないでユーザー認証を導入することができる 導入 ライブラリはメイン部分と、Strategyと呼ぶ認証部分に分かれている 認証の種類毎にStrategyが分かれていて、使いたい認証のStrategyを都度インストールして使用する 例)Google認証 インストール npm instal
AWS Lambda と Serverless Framework を使って、簡単なSlack Bot(ボット)を作ってみたので、その作業メモです。 Slack Botの作成は手順が多く手間なのですが、AWS Lambdaを使うとサーバー周りのことを気にしなくて済みます。 また、Lambdaの開発にServerless Frameworkを使うと、面倒なAWSコンソールでの作業が不要になるので、割と手軽に作成できてオススメです。 Slack Botの概要的な説明とGUI作業は別記事にしましたので、Slack Botが全く初めての場合は、先にこちらを読んだ方が分かりやすいかと思います。 www.kwbtblog.com 本記事は主に、実装方法についてのメモになります。 Slack Bot作成のための要件 Slack Botを作るには、いくつか満たさないといけない要件があるので、その要件と解決
Jenkinsが動いているサーバーを変更したので、Jenkinsをバックアップして新しいサーバーに反映しました。 再び Jenkinsのバックアップが必要になった時用のメモ書きです。 概要 Jenkinsはよくできていて、Jenkinsのホームディレクトリーをまるままコピーして、移行先のJenkinsのホームディレクトリーに展開するだけです。 また、Jenkinsのホームディレクトリは環境変数「$JENKINS_HOME」に記載されています。 手順 echo $JENKINS_HOME Jenkinsのホームディレクトリを確認(ここでは「/var/jenkins_home」とします) cd /var tar zcf backup.tar.gz jenkins_home 「jenkins_home」ディレクトリを圧縮してファイル「backup.tar.gz」に保存 移行先にて cp back
パワーポイントなどで図を描こうとすると、レイアウトやサイズなどがなかなか決められず、サクッと描くことができない性分です。 設定を変更できるから迷うのであって、いっその事、ガチガチに制約があった方が割り切れていいんじゃないかと、よくある、テキストで描かれた図を作成するツールを検討してみました。 そのようなツールはいくつかあるのですが、一番シンプルで分かりやすかった「Graph::Easy」を使ってみることにしました。 Graph::Easyの使い方はそれほど難しくないのですが、CUIツールなので使っていないとすぐに忘れてしまうため、個人用備忘録としてここにまとめました。 インストール Graph::EasyはPerlのモジュールなのでcpanを使ってインストール cpan Graph::Easy cpanが入っていない場合は下記でcpanをインストール sudo apt-get instal
あまり需要ないかも知れませんが、下記の「Arduinoで作成したUSB接続のPC音量調整ボタン」のRaspberry Piバージョンを作成したので、その手順と説明メモになります。 www.kwbtblog.com Raspberry PiをUSB機器(ガジェット)にするざっくりとした説明 通常、Raspberry Pi のUSB端子には、マウスやキーボードといったRaspberry Piで使う周辺機器を接続するのですが、Raspberry Pi Zeroは、PCとUSBケーブルで接続して、自分自身をPCのUSB機器(ガジェット)にすることができます。 USBにはOTGという、PC無しでUSB機器どうしを接続させる規格があって、それを使うとUSBの親になったり、子なったりできます。 そして、LinuxにはUSB OTGドライバーが入っているので、今回それを用いてRaspberry PiをUS
サイトに手軽にアクセス制限をかける方法としてBasic認証を使うことがあります。 Basic認証は便利なのですが、ブラウザがID・パスワードを覚えてくれなくて毎回入力する必要があったり、ID・パスワードを知っていれば誰でもアクセスできてしまうのが問題だったりします。 もう少しちゃんとした認証を入れたいのですが、認証システムを作るまではやりたくなく… そこで、Webサーバーの設定だけで、Basic認証の代わりにGoogle認証を使って、指定したGmailアカウントしかアクセスできないようにしてみました。 概要 WebサーバーにはNginxを使い、oauth2_proxyという認証周りの処理をやってくれるリバースプロキシを使用します。 Nginxにアクセスがあると、Nginxはoauth2_proxyに有効なユーザーかを問い合わせ、有効であれば次の処理、つまりサイト表示を行います。ユーザーが無
下記のようなディレクトリ構造において、バケット直下や、「dir_A1/dir_B1」直下のディレクトリ一覧をJSONで取得する方法。 s3://bucket_1/ dir_A1/ dir_B1/ dir_C1/ dir_C2/ dir_C3/ dir_A2/ dir_A3/ バケット直下の場合 $ aws s3api list-object-v2 --bucket 'bucket_1' --prefix '' --delimiter '/' --output json { "CommonPrefixes": [ { "Prefix": "dir_A1/" }, { "Prefix": "dir_A2/" }, { "Prefix": "dir_A3/" } ] } サブディレクトリ直下の場合 $ aws s3api list-object-v2 --bucket 'bucket_1' --
ラズベリーパイ単体でDockerを使う分にはいいのですが、ラズベリーパイをミニサーバー代わりにして、そこでDockerを使うのは使い勝手が良くないなぁという話です。 きっかけ 定期的にクロールを実行するサーバーを、デスクトップPCで動かしていました。 追々専用サーバーを用意するつもりだったので、サーバー移行しやすいようDockerを使用しました。 コンテナ構成は下記のとおりで、docker-composeで構成し、docker-machineでWindowsにHyper-VのDockerマシンを作成して、そのマシンにdocker-composeをアップしていました。 +-------+ +---------+ +-------------+ +---------------------+ | Nginx | --> | Jenkins | --> | Linux + SSH | --> |
次のページ
このページを最初にブックマークしてみませんか?
『www.kwbtblog.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く