わけあって、インドネシア語を勉強する必要がありますので、トイレ・壁の貼り付け用のチートシートを作成します。
Vol1は、数字・曜日・月とかです。
Oracle Application Express Notes | Apps development Notes | Google Cloud Platform | Python | apps test | Cool Beans | English | Books
2020/08/24
2020/07/26
ボードゲーム:Catan dice game (カタン ダイス ゲーム)
大分前に買っていたけど、遊んでいなかったボードゲームというかサイコロゲーム。4連休で時間があったので、遊んでみた。遊び方は2通り。どちらも6個のサイコロを振り、出来るだけ高得点を取る(遊び方1)か、早く10点に到達する(遊び方2)を目指すゲーム。ボードゲームのCatanは、我が家では1時間〜1.5時間かかるけど、これは、30分ぐらいで終わるし、場所要らずで持ち運びも簡単なのは良い。専用の記録紙が必要なのは、ちょっと考えもの・・・。
私個人としては、ボードゲーム版の方が面白いと思う。妻は、サイコロの方が良いとのこと。
ボードゲーム版のCatanを知らなくてもプレイできると思うが、知ってた方が、理解が早いと思う。
文字列の組み合わせを作る itertools --- Python3
Goal: a,b,c の文字列の組み合わせを作りたい。例えば、abc, acb, bac, bca, cab, cba と6つ出したい。
How: itertools.permutations() モジュールを使う。
Result:
How: itertools.permutations() モジュールを使う。
Result:
2020/07/24
GCP: GAE node.js standard 環境で、Facebook Messanger のBot を立ち上げるまで
- Goal
FacebookMessengerのBOTをGoogle App Engine Node.js Standard 環境上に立ち上げる。
・テキストメッセージながらオウム返し
・それ以外のメッセージなら「ああ、それな〜」と返す - How
- Facebook Developerでの作業
(1)アプリの作成

(2)Messangerプラットフォームの設定
・トークン作成で、PAGE_ACCESS_TOKENを作成

・Webhookとして、まずはmessages と、messaging_postbacksを有効にする。
・コールバックURLに、Google app engine のURLを入力
・トークン欄には、自分自身で決めた文字列を入力する。この値がFacebook側からGAEのWebhookに渡されるので、GAEのアプリケーション内のVERIFY_TOKENにセットする必要がある。

- GAE アプリケーションの作成
(1)GCPプロジェクトを作成 (割愛)
(2)GITからサンプルコードをPull
git clone https://github.com/pumpkinpietea/facebookMessengerBot.git
(3)Facebook Developerで発行したPAGE_ACCESS_TOKENと自身で決めたVERIFY_TOKENを貼り付ける
(4)gcloud コマンドでDeploy
$ gcloud init
$ gcloud app deploy - 完成

- 参考サイト Thanks!!
- facebook のサンプルコード
https://github.com/fbsamples/messenger-platform-samples - Google App Engine の説明サイト
https://cloud.google.com/appengine/docs/standard/nodejs/quickstart?hl=ja - 編集後記
- PythonのSDKは、Facebookは公開していなかったので、Node.jsで実施。
- Node.jsのrequestが、Deprecatedなので置き換えが必要。どこかで、やろうかな。。。
ラベル:
GCP,
Google App Engine,
Google Cloud Platform,
仕事
2020/06/07
MySQL Workbench から、SSH接続しようとすると”Access denied for 'none'. Authentication that can continue: publickey”エラーになる
-
Issue
MySQL Workbench から、SSH接続しようとすると”Access denied for 'none'. Authentication that can continue: publickey”と言われる。。。
-
原因
SSHのKeyをmacで作成したために、Keyの形式が問題らしい。
(参考)Thanks a lot!!
WorkBenchでDBサーバーにSSH接続できないって? - Solution
Windowsが、手元になかったので、macでのやり方をメモ - putty をインストール
- puttygem で、.ppk ファイルを作成
- puttygem で、オプションprivate-openssh を指定して作成
- そのKeyをセットアップすると接続!
- 編集後記
MacでMySQL Workbenchを使う人は、少ないのかな?調べるのに時間かかってしまった。
GCP: ローカルからGCLOUDコマンドを叩くと pyenv: python2: command not found エラー
-
Issue
gcloud コマンドをローカルから使おうとしたら、pyenv: python2: command not found エラーとなる
-
環境など
Mac mojave 10.14.6
pyenv 1.2.8-182 ※homebrew でインストールしていない。(これが原因かも) -
原因
文字通りなのですが、gcloudの中で、"python2" コマンドが呼び出されるけど、python2 コマンドが見つからないと言われている。
-
Solution
.zprofile に、export CLOUDSDK_PYTHON=/usr/bin/python を追記
これを追記することで、呼び出すPython環境を明示できて、python2 を呼ばなくなる。
(しらんけど。。。) -
編集後記
これは、元々、エラーがでるけど普通に動く。多分、python2 コマンド使って、だめならpython コマンドって順番に呼び出しているのかと想像。
前のMACだと出なかったんだけど。。。
ラベル:
GCE,
gcloud,
GCP,
Google Cloud Platform
2020/06/06
GCP: Google Compute Engine にVSCODD 越しに接続する
- Goal
- VSCODEから、GCEインスタンス(開発環境)に接続開発する
- そのとき、一応SSHのポートも変更する
- How
- gcloud SDK のインストール(詳細はカツアイ)
- GCE インスタンスを作成し、静的IPを割り当てる (詳細はカツアイ)

- ローカル端末で、Keyを作成する
ssh-keygen -t rsa -b 4096 -C "testUser" - GCEの設定画面で、Keyを貼り付け

- PORT:22での接続テスト
gcloudコマンド (静的IPの割当が不要。インスタンス名で接続できる)
gcloud compute ssh testUser@instance-1 --ssh-key-file ./test_rsa - GCEのOS上でのsshdのポート変更
5で接続した状態で、GCEの内部のsshd_configファイルの設定を変更する
sudo vi /etc/ssh/sshd_config
以下に、接続したいポート番号を追加
#Port 22
Port 22011
#AddressFamily any
そのあとに、サービスのRESTARTとSTATUSを確認
sudo systemctl restart sshd
sudo systemctl status sshd
確認して問題なければ、一旦GCEから抜ける - GCPのネットワークの設定でPORTの変更
以下のケースでは、22から22011へ変更
- ローカルから、SSHでアクセステスト
ssh testUser@34.67.184.203 -p 22011 -i ~/.ssh/test_rsa - config の設定を加えるとVSCODEのからアクセスできる

- 編集後記
GCEインスタンスの開発なら、VSCODE+RemoteDevelopmentで開発して、Cloud Source Repositories へPushし、Cloud BuildでSTG環境と本番へデプロイが良いのでしょうか?
でも、GAEなら、Cloud Shell で開発して、Cloud Source Repositories+Cloud Buildもできて、それならどこでも開発できるとも思ったりします。
開発経験の少ない素人なので、良い方法が単純に知りたい・・・
登録:
投稿 (Atom)
