コーヒー飲みながら仕事したい

仕事で使う技術的なことの備忘録とか


Wordpress に引っ越しました!

2018-01-01から1年間の記事一覧

Docker Hub を使ってみる

主題の通り、 Docker Hub がどんなものなのかを試してみます。 どうやら、github と連携したりすることができるそうです。 感覚としては、 docker のイメージを github のリポジトリのように登録できるのかなという感じです。 アカウント登録 github のアカ…

docker-compose でイメージを作る

docker-compose コマンドで build -> up -> run します。 以下、docker-compose.yml が置いてあるディレクトリで実行します。 > dock-compose build > docker-compose up <サービス名> > docker-compose run <サービス名>

Docker でコンテナをコミットする

以下、コミットの流れを備忘録として残します。 コミット docker commit <コンテナID> <コミット名>:<tag> 上記でコミットしたコンテナは、イメージとして利用できるみたいです。 docker run -it <コミット名>:<tag> コンテナへのアタッチ ついでに、コンテナへのアタ</tag></tag>…

mosquitto で CommonName が異なっていても無理やり TLS 接続できるようにする

追記(修正) mosquitto Ver1.4.15 にて修正されているようです。 ですので、最新の mosquitto を使用すると、 CommonName が異なっていても、 --insecure オプションをつければ、無理やり TLS 接続できます。 mosquitto クライアントアプリの TLS 接続にお…

SSL/TLS の仕組みについて備忘録

備忘録と言いつつ、ほとんど参考サイトの掲載になるが、↓のサイトの「デジタル証明書の仕組み」の絵が非常に参考になります。 www.infraexpert.com これで、認証局とか CSR(証明書要求)とかの登場人物がどういう関係かがわかります。最強です。感謝。 なお…

mosquitto を Visual Studio でコンパイルする

githubに公開されている mosquitto のソースファイルを、Visual Studio でコンパイルします。 前提 今回は Visual Studio 2010 を使用する(たぶん2017とかでも大丈夫) Visual Studio の C++ コンパイラがインストールされていることが前提 CMake を使用し…

EMQ を使用して mqtt の通信をする

EMQ とは EMQ とは、 Erlang で実装された mqtt ブローカーです。 mqtt ブローカーとしては mosquitto が有名ですが、以下の特徴があります。 mosquitto と比較しても、 EMQ もなかなか性能が良い(らしい) mosquitto ではできない、ブローカーのクラスタを…

EMQ で TLS 接続する

今回はEMQ(emqttd)を使用して、mqtt の TLS 接続をする方法。 EMQのインストール方法とかは割愛。 サーバーの公開鍵/暗号鍵の生成、それらのオレオレ認証 ↓が参考になった。 基本的には前記事の mosquitto の場合と同じ。 medium.com EMQ側の設定を変更 …

mosquitto で OpenSSL を 用いて TLS 接続する

mosquitto をで TLS 接続する方法です。 OpenSSL を使用するのが簡単だと思うけど、ちょっと間が空くとすぐやり方を忘れてしまうので備忘録として残しておきます。 2018/03/11 追記/修正 いろいろ TLS について勉強してみると、言葉の使い方や理解が正しく…

Protocol Buffers の C# 版で遊んでみる

Protocol Buffers のC#版 有名どころでは、以下の2つがあるようです。 protobuf-net 特徴:.proto ファイルが不要で、すごくシンプルにシリアライズ/デシリアライズできる。 Google.Protobuf 特徴:.proto ファイルが必要で、事前にシリアライズ/デシリア…

Visual Studio 2017 で protobuf-c を試してみる

前回の続き。 tassi-yuzukko.hatenablog.com もろもろの準備がやっとできたので、 Visual Studio 2017 で protobuf-c を試してみる。 前準備 あらかじめ下記内容で amessage.proto を用意しておく(前回生成済み) syntax = "proto3"; message AMessage { in…

protobuf-c で今度こそ遊んでみる(proto2とproto3の違い編)

あらすじ もともと軽い気持ちで Protocol Buffers のC言語版を遊んでみようと思っていたら、意図せず Docker を巻き込んだ一大イベントに発展した。 やっとこさ準備ができたので、楽しく遊ぼうとしていた。が、しかし・・・ protocol buffers のバージョン2…

Protobuf-c を Docker 上の Ubuntu 環境でインストールする

あらすじ 前回、 protobuf を Docker 上の Ubuntu 環境でインストールした。 tassi-yuzukko.hatenablog.com 今回は、いよいよ protobuf の C言語版である protobuf-c をインストールする。 protobuf-c をインストールするまでの手順 基本的には protobuf と…

Protobuf を Docker 上の Ubuntu 環境でインストールする

あらすじ 前回の続き tassi-yuzukko.hatenablog.com 今までの流れの概略 protobuf-c をコンパイルしようと思ったら Windows 上ではうまくいかなかった →Ubuntu 環境だったらうまくいくのではと思い、 Docker (Docker ToolBox)を導入してみた →Ubuntu のイ…

Dockerfile を使って、自分用の Ubuntu の Docker イメージを作成する

前回の続き。 tassi-yuzukko.hatenablog.com 今回の目的 docker pull ubuntuで最新版のubuntuイメージを取得することはできる。 しかし、その場合、 sudoすら入っていない状態なので、一つずつ apt-get で環境整備する必要が出てくる。 そこで、Dcokerfile …

Docker でホストマシンのストレージ移動と共有フォルダのマウント

Docker ホストマシンのストレージを移動する イメージを入れる前に、Docker ToolBox を使用している場合は、C:\Users\<ユーザー名>\.docker\machine\machines\<マシン名>に仮想ディスクファイル (.vmdk) が作られるらしい。 私の環境ではCドライブが切迫して…

Docker を Windows 10 Home 環境で動作させてみる

あらすじ 前回 tassi-yuzukko.hatenablog.com Windowsでのmakeとかがうまくいかなかったので、開き直って「もうLinux環境でやってやる!」となったので、Dockerをインストールすることにする。 Docker ToolBox どうやらWindows 10 ProじゃないとDocker for W…

Protocol Buffers のC言語版で遊んでみる

ことの成り行き Windows PC から、C言語しか動作しない低性能ハードウェアとEthernet通信するという案件がある。 もともと、Windows PC からIoT機器に対するEthernet通信(というかMQTT)では伝文のシリアライズフォーマットにJSONの使用を考えていた。しか…

C#でTCP通信のプログラムを作ってみる

主題の通り、作ってみるのだが、とりあえず今は調査中なので「これは押さえておきたい」というところのメモ 目的 基本的にはサーバープログラムを作る。 同時に複数のコネクションが接続されることを想定する。 基本的には↓が参考になる。 ichiroku11.hatena…

Windows10が勝手に自動更新してウザイとき

Windows10で自動更新がかかるのを制御する方法。作業中にいきなりCPU100%とかなって邪魔されるので、自動更新を切ります。 Windows10 Pro であることが前提です。あと、更新が一切かからなくなるので、手動更新は自己責任です。 Windows Update を無効にす…

dotnet ef migrations add したら Unable to create an object of type 'ApplicationDbContext' と怒られるとき

ことの成り行き もともと dotnet core 1.1 のプロジェクトを dotnet core 2.0 にターゲットフレームワークを差し替えた時のお話。 コードファーストでDBを作るために、主題の通り dotnet ef migrations add XXX を実行したら Unable to create an object of …

dotnet ef コマンドが使用できないとき

↓参照でおk kuttsun.blogspot.jp

dotnet core 1.1 と 2.0 で挙動が違う件

[新しいプロジェクト]→[ASP.NET Core Web アプリケーション]で、「ASP.NET Core 2.0」を選択し、「Webアプリケーション(モデル ビュー コントローラー)」を選択し、「認証の変更」で「個別のユーザーアカウント」を選択する。 これで、デフォルトの状態で…