Yu Takahashi

docker-compose

複数のdocker-compose間で通信する

異なるdocker-composeで動く環境に接続したくなったので調べてみました。 準備 まず、以下のようなdocker-compose.ymlで定義された2つの環境があるとします。 . ├── app_a │ ├── app/... │ └── docker-compose.yml └── app_b ├── app/... └── docker-compose.yml version: '3.7' services: app_a: image: golang:latest tty: true db_a: image: postgres:latest view raw [https://gist.github.com/yutakahashi114/f79ff6c5501c7509bf79bcc50c50ebe5/raw/3f9b33438bc4e9a4c7d9120c7566933abb9b8e27/multi-docker-compose-a-base] multi-docker-compose-a-base [https:
Yu Takahashi
Yu Takahashi
5 min read
golangXorm

GolangのORM、Xormの使い方ざっくりまとめ

最近、GolangのORMとしてXormを使っています。GoのORMといえばGormが主流で、調べてもXormに関する記事が少なかったので、備忘録としてまとめてみました。 自分が業務で使用している機能のみをまとめたので、さらに詳しく知りたい場合は公式ドキュメントを参照ください。 環境 * Go : 1.13.1 * Xorm : 0.7.9 * PostgreSQL : 11.6 使用するテーブル create table users( id BIGSERIAL, first_name VARCHAR(20) NOT NULL, last_name VARCHAR(20) NOT NULL, first_name_kana VARCHAR(20), last_name_kana VARCHAR(20), version BIGINT NOT NULL, created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAM
Yu Takahashi
Yu Takahashi
14 min read
CirqBB84Python

CirqでBB84を実装してみた

量子プログラミングのライブラリCirqを使って、量子鍵配送プロトコルBB84を実装してみました。 Cirq Googleが公開している量子プログラミングのライブラリです。(https://cirq.readthedocs.io/en/stable/) 以前Cirqでフーリエ変換を実装したことがあるので、興味のある方はそちらもどうぞ。( http://tech.innovation.co.jp/2019/03/16/Cirq.html) BB84 量子鍵配送のプロトコルです。(https://ja.wikipedia.org/wiki/BB84) BB84をざっくり説明するとこんな感じです(間違ってたら教えてください) * 送信者はランダムにビット列を生成する * それぞれのビットをqubitにエンコードして受信者に送信する。その際、X基底・H基底のどちらをランダムに選択してエンコードする * 受信者はそれぞれのqubitをデコードして値を読み取る。その際、X基底・H基底のどちらをランダムに選択してデコードする * 送信者と受信者は何番目のビットをどちらの基底でエンコー
Yu Takahashi
Yu Takahashi
5 min read
golangNuxt.jsMySQL

Go,Nuxt,MySQLの環境をGCPにデプロイしてみた

開発環境から本番環境まで構築し、Google Cloud Platform(GCP)にデプロイしてみました。 環境 * フロントエンド:Nuxt.js (Firebase Hosting) * バックエンド:Go (Cloud Run) * DB:MySQL (Cloud SQL) ()内は使用するGCPのサービスです。 ブラウザからユーザーの氏名を送信するとDBに登録され、画面に全ユーザーの氏名を表示するだけの単純なアプリケーションを作成し、GCPにデプロイしました。最終的なソースは以下です。 GitHub - yutakahashi114/go_nuxt_mysqlContribute to yutakahashi114/go_nuxt_mysql development by creating an account on GitHub.GitHubyutakahashi114 [https://github.com/yutakahashi114/go_nuxt_mysql]ディレクトリ構成はこんな感じです。 . ├── client/ │ └── va
Yu Takahashi
Yu Takahashi
11 min read