Archive "2019年12月"を表示しています。
2019.12.26 木
Postgresの権限設定のベストプラクティスというか方針はどうするのがよいのか?というところなのすが、実際は何でもいいです。ですが、おおよそのベストプラクティスとしては、 Loacalからのアクセスはpeerかidentでやるのがいい。 認証方式
2019.12.25 水
Cloud DNSはデフォルトでは外部のDNSの機能しかもっていなくて、内部、つまりGCPでいうところのVPC内の閉じたネットワークの名前解決はできないことになっています。自分でDNSサーバーを作成する際にはExternalとInternalでロケーションを分けて記述できるので、当然Cloude DNSでもできるだろうというのがあるのでいろいろ調べると「限定公開ゾーン」というやり方があるようです。 foo.example.comに対して、内部では192.168.0.5(ローカルIP)を引けるようにして、外部では123.456.789.xxx(グローバルIP)を引けるようにするということになります。基本的な外部の名前解決はすでにできるようになっていることが前提で解説します。 foo.examp...
2019.12.24 火
既存のVMインスタンスのイメージを作成して、別のVMインスタンスとして起動するまでの手順です。 日々のバックアップだったらスナップショットを使うのがベストプラクティスです。しかしある程度カスタマイズしてすでに構築してあるサーバーを同じようにもう一台構築したいといった場合にはイメージの作成が向いています。バックアップとしてイメージを使うこともできますが、あんまりスマートではないです。イメージの作成が役にたつのは、 同じVMインスタンスをもう一台作成したいとき。 VMインスタンスの設定・データを含めた完璧なバックアップ。(バックアップできないのはネットワークだけ) 基本的なミドルウエアなどを設定して、VMインスタンスの雛形として使う場合。 などです。スナップショットは基本的には差分を抽出してバッ...
2019.12.23 月
SSHでのscpコマンドの使い方である程度基本的なことを書いたので、その応用編です。 SSHの踏み台(ポートフォワード)を使ってSCPする ssh/scp多段接続〜踏み台サーバを越えて〜
2019.12.21 土
Google Cloud StorageはTransmitでも接続ができます。Amazon S3とほぼ同じプロトコル(なのか、そこらあたりを強引に合わせているのか)はわからないけど、Transmitでも接続できます。 Transmitを利用してGoogle Cloud Storageに接続するには Cloude Storageにアカウントを紐付けます。 アドレスはこれを設定する https://storage.googleapis.com 認証情報は、 Access ID: Secret Key: Cloud Storage の認証
2019.12.21 土
マウス使うと仕事遅いよ。 アプリケーションを選択する [control] + [tab] *tabを連打で選択 戻るときは ( [control] + [shift] ) + [tab] スクリーンショット 選択範囲をスクリーンショット (選択範囲をドラッグして離す) [command] + [shift] + 4 画面全体 [command] + [shift] + 3 スクリーンショットの方法を選択する(すべてのスクリーンショットのとり方を選択できる) [command] + [shift] + 5
2019.12.20 金
MacでSSHトンネルをする (Coccinellida)を使うのも鬱陶しくなってきたので、コマンドでやることにしました。接続先の例はこんな感じ。 接続先ホスト host: xxx.xxx.xxx.xxx user: suser port: 22 key: /MYKEY 中継(踏み台)ホスト host: zzz.zzz.zzz.zzz user: buser port: 2222 key: /MYKEY こういうコマンドになる。1234というダミーのポートを使うのがコツです。 $ ssh -L 1234:xxx.xxx.xxx.xxx:22 buser@zzz.zzz.zzz.zzz -p 2222 ターミナル上でプロンプト待ちみたいな感じになるので、そこからTransmitとかでlocal...
2019.12.20 金
ちょっと気を抜いていたのですが、こういう事態に気が付かなったです。GCEのVMインスタンスは外部IPアドレスを持たない場合はVPCの中に閉じられた状態になるので、そのまんまだと、外部との通信ができなくなってしまいます。通常のネットワークではデフォルト・ゲートウェイが外向けに設定されているので、LANの中でも普通にインターネットができますが、GCPではそのような仕組みを自分でつくってくださいということになっているので、何らかのかたちで作成しないといけない。 公式ドキュメントでは、VM インスタンスへの安全な接続の中で外部IPをもたないVMインスタンスをどうするか?ということについて、いくつかの方法を載せてあります。どれもこれも一長一短ではありますが、どのような場合にどのような方法がよいのか考え...
2019.12.20 金
Githubの公開鍵はネット上に常に公開されています。私の場合はこのような形。複数登録している場合は複数個表示されます。 https://github.com/osamthing.keys 形式は以下の通り。 https://github.com/ACCOUNT_NAME.keys
2019.12.19 木
アップロード中にエラーが発生しました。後ほどもう一度お試しください。 というメッセージと共に画像がアップロードできない、またはアップロードされているが編集画面でうまくメディアを呼び出すことができないなどなど。WordPressの「メディアの追加」が効かなくなった時の諸々の対象方法。 しょぼい記述ミス。 パーミッションの問題。uploads以下のディレクトリを777にしておくなど。 admin-ajax.phpのバグである説。アップロード時の形式の問題。ワードプレスのメディアが読み込まれない!その解決方法を解説 プラグインの影響 (すべてのプラグインを止めて試してみる) テーマの影響 (デフォルトのテーマに戻してみる) function.phpの影響 (中身をコメントアウトしてみる) キャッシ...
2019.12.19 木
VMインスタンスにCloud StorageをHDDやSSDのようにディスクとしてマウントできます。単にデータ置き場として利用する場合は、VMインスタンスに付属のストレージを使うより安上がりになりますが、内部のプログラム言語の実行や通常ディレクトリ上でできる様々な作業に制限があります。実際は、画像や動画、圧縮したデータの置き場などに使うのが一般的です。プログラムリソースもJavascriptやCSSなどのスタティックなものに限りおいて置いておくことは可能です。私は個人的に外付けHDDっみたいなものとして使ってます。 VMインスタンスの作成 普通にVMインスタンスを作成します。SSHでログインできるようにしておけば取り敢えずOKです。 GCEのアクセス権設定を設定します。Cloud APIアク...
2019.12.18 水
とにかく、いろんな局面でVACUUMするのがPostgreSQL。 => select relname, n_live_tup from pg_stat_user_tables where schemaname='public' order by relname; で、全テーブルのレコード数をカウントできますが、なんかキャッシュされます。truncateしても、このSQL文で出力した内容が更新されない。pg_stat_user_tablesを更新しないといけないらしい。たぶん統計情報として何かしらのキャッシュをもっているのだと思う。 => truncate table SAMPLE_TABLE; => select count(*) from SAMPLE_TABLE; c...
2019.12.15 日
プロロジェクトを開く [command] + o ファイル検索
2019.12.11 水
psqlのログイン内でファイル出力する postgres=#
2019.12.11 水
ファイルの数をカウントする(ファイルの数を数える) ./と../、Toatal行が出るので3行抜いた数で計算しないと合わなくなります。 # ls -al ./DIR | wc -l この数からマイナス3をした数がファイル数です。(が、中にディレクトリがある場合は、それも加算されちゃうので、findでやった方がいいかも。)
2019.12.10 火
PostgreSQLにはユーザーとかロールとかデータベースとか権限や認証関連でややこしいっていうのがあります。ユーザーとロールは何が違うんだ?って話とか。オーナーとロールとユーザーって何が違うんだとか。ほんとややこしい。 ロール (role)とは PostgreSQLのロール ロールの新規作成 ロールの削除 ロールをデータベースに紐付ける データベースの作成) データベースの削除 ロール (role)とは 一般的にはPostgreSQLのロールとは「ユーザーと呼ばれるものとグループと呼ばれるものの二つの性質を兼ね備えたもの」ということらしいです。つまりユーザーとグループのことですね。 role ├── user └── group ロールのことをユーザーと言ったり、ユーザーのことをロールと言...
2019.12.10 火
pg_hba.confでlocalhostからのログインはtrustにすればいったん解決します。バージョンや環境によってちょっと違いますが、概ねこんな感じ。 $ su - postgres $ vi /var/lib/pgsql/11/data/pg_hba.conf 中身はこんな感じになっているとしたら、 # PostgreSQL Client Authentication Configuration File # =================================================== local all all md5 host all all 127.0.0.1/32 md5 host all all ::1/128 md5 md5でパスワードの暗号化...
2019.12.6 金
WordPressのプラグインはfunctions.phpの拡張というような機能になっています。ちょっとしたカスタマイズだったらfunctions.phpに書けば十分機能しますし、どんな設定も全体に反映できますし、部分的にどこに機能を注入するかもフックを使って指示できます。これはなかなか優れたフレームワークの機能で、こういった設計はわりと好きです。 プラグインの機能はこれらの機能の拡張なので、実際に作成する際に必要なことは、機能を割り当てた関数function()とそれらを反映させるアクションフックとフィルターフックということになります。functionはPHPの知識が多少あれば書けますが、フックについてはWordpress固有の仕様であり知識なので公式ドキュメントを熟読する必要があります。...