銀の光と碧い空

クラウドなインフラとC#なアプリ開発の狭間にいるエンジニアの日々

イギリス旅行で giffgaff というプロバイダのSIMカードを使ってみました (2017年8月版)

10日ほどイギリスに旅行に行っていたのですが、いつものごとくSIMフリーの携帯にSIMカードのみを購入して現地でインターネットと通話に使っていました。ちなみに2年前にいったときは three.co.uk のSIMカードを購入しました。 miscellany.tanaka733.net 今回…

ASP.NET Core 2.0 preview 2 では C# 7.1 の構文がRazor Viewの中で使えなかった話

このissueのやり取りがすべてなんですが、備忘録として残しておきます。 github.com

AAD DSを使って、OpenShiftのLDAP認証先としてAADを参照する

前回の続きとなる記事です。 tech.tanaka733.net OpenShift はmasterのAPIへのアクセス(Webのポータル画面含む)にいくつかの認証方法を選べます。認証のプロバイダにAADを使いたい場合はOpenID Connectが使えます。ただ、どうしてもAADに定義したグループ、…

Azure Active Directory Domain Services (AAD DS)を使って、RHEL Serverから openldap-clients で接続してみる

AADは非常に便利なのですが、LDAPプロトコルがそのままでは使えません。LDAPを使いたい場合はAAD DSを使います。 docs.microsoft.com なのですが、意外とLinuxのopenldap-clientsから接続する場合の手順がみつからず非常に手間取ったのでまとめておきたいと…

Microsoft MVPを再受賞しました

5年目の受賞になります。MVPプログラム全体での受賞のサイクルが変わりましたが、もともと7月受賞だったので変わりなく7月に再審査の結果更新となりました。 tech.tanaka733.net 今回もカテゴリはVisual Studio and Development Technologiesとなります。今…

2017年 .NET Core 1.x (Visual Studio 2017) プロジェクト向け AppVeyor での自動ビルドの設定

ChatWork 向けのC# クライアントを開発していて、ここ1~2年は更新していなかったものの、最近.NET Core対応させたり、API endpoint v2に対応したりしてまた更新するようになりました。 github.com 2年前にAppVeyorで自動ビルド環境を作っていましたが、当時…

#decode17 に参加してきました

de:code 2017に久しぶりに参加しました。初年度以来な気がします。ということで感想をまとめてみました。 キーノート Mobile First, Cloud First からAI中心の Intelligent Cloud, Intelligent Engineへ。あらゆる製品にAIを搭載する流れ。音声認識の認識率…

Y8 2017 spring in Shibuya で .NET Core on Linux の内部について話しました

Y8 2017 Spring という技術系ノンジャンル(と私は理解している)イベントがあったので登壇してきました。CFPにリアクションして頂いたみなさまありがとうございました。こちらが資料です(更新するかもしれないです)。 doc.co イベントサイトはこちら。 y8-201…

Red Hat Summit や //Build 2017 での発表まとめ

Red Hat SummitやらMicrosoftのBuild 2017でいろいろ、Red Hat on Azure, .NET Core, SQL Server on RHEL などなどのセッションがあったので、それぞれの走り書きメモをまとめています。随時更新中。Red Hat Summitは公開されているセッションがすくないので…

Chatwork.Api をnetstandard1.6とnet45対応しました

ChatWorkのAPIエンドポイントがv2に変わる対応を公開したのですが、同時に0.5では.NET Frameworkでは使えなかったので0.6.1で.NET Framework 4.5でも使えるようにしました。 www.nuget.org

fluentd で AWS Elasticsearchに長い間つないでいると"Cannot get new connection from pool."というエラーが出る件について

本記事はQiitaに投稿していたものを、Qiitaのコミュニティガイドライン追加に伴い削除の可能性を考慮してこちらに移行しました。理由は、fluentdからElasticsearchにログを投げ込み処理は弊社のOpenShiftのログ収集機能で利用しているものであり、記事投稿が…

clrdbg は vsdbg にリプレースされました

以前このような記事を書いて、先日同じ手順を実行しようとしたらVisual Studio Codeは最早clrdbgをサポートしなくなりました、といった類のメッセージが出てデバッグできなくなっていました。 tech.tanaka733.net 確認してみると、Visual Studio CodeのC#拡…

docs.com に「password」といった単語が含まれるドキュメントをアップロードすると機密情報を含む文書として一般公開できなくなる問題

昨日、Global Azure Boot Campの資料を公開しようとしたら突然こんな画面が出ました。 「???」と思い、リンク先のページを見ると、どうも最近のリリースで機密情報保護機能というのがはいって、おせっかいにもdocs.comが機密情報を含んでいると判断すると…

Azure CLI 2.0 で自分のイメージにRHELやCentOSと名付けたら、意図せずMarketplaceからVMが起動される件

最近はまってしまって、意図しない課金が発生したのでMicrosoft supportとやりとり中なのですが、公開できる部分に関してこちらで調査した結果わかったAzure CLIの挙動についてメモしておきます。

Visual Studio 2017 で ASP.NET Coreプロジェクトでdockerデバッグしたいときはソリューションディレクトリを作らないといけない件

タイトルだけで言いたいことは以上なんですが、Visual Studio 2017でASP.NET Coreプロジェクトを作ってdockerサポートを有効化すると、こんな風にdocker-composeプロジェクトが作られてDocker for Windowsの上のDockerコンテナを使ってデバッグ実行ができる…

SQL Server Availability Group を RHEL Clusterで作ってみる

注意: SQL Server Availability Group をRHEL Clusterで作る場合はHA add-on が必要ですが、このアドオンはAzure上ではサポートされていません。ということでサポート対象外だけど試したいという場合にAzure上でどうぞ。全体の作り方はAzure上に限らないはず…

Visual Studio 2017 リリース記念勉強会 にて登壇します

もう定員オーバーなのですが、今回まどすたと行き来自由ということなので、どちらのセッションを選ぶかの参考にもなるように発表内容を紹介しようかと思います。 csugjp.connpass.com

VisualStudio 2017 RC3 から .NET Core on RHEL にリモートデバッグする

VisualStudio 2017 RC3からリモートデバッグのプロトコルにSSHが選択できるようになり、Linux上の.NET Coreプロセスにアタッチすることができるようになりました*1。 blogs.msdn.microsoft.com これは、以前ブログに書いたdocker上の.NET Coreプロセスをリモ…

ASP.NET Core でローカライズする場合のリソースファイル名について

ASP.NET Coreのローカライズする際のリソースファイル名についてこのドキュメントを読んで気になったことがあったのでまとめました。 Globalization and localization | Microsoft Docs ローカライズそのものについてはこのドキュメントを参考にしてください…

Fiddler on Linux beta が出たのでFedoraで使ってみた

Fiddler on Linuxのベータ版がリリースされたようです。HTTP通信に特化している分使い易くなっているのが個人的に好きです。 www.telerik.com 実はアルファ版が以前に出ていたようでした。 Fiddler for Linux Updated というわけで早速Fedora 24に入れてみま…

.NET Core on Linux で systemd scriptでプロセス管理する (手抜き版)

ASP.NET Core でLinuxでホストする場合、以前の公式ドキュメントではsupervisorを使う方法が紹介されていました。ただ、CentOSやRHELだとEPELリポジトリにあるしなあと思っていたら、いつの間にか公式ドキュメントがsystemdを利用したサンプルに変わっていま…

ASP.NET Core MVC で static fileを認証ユーザーのみに公開する

ASP.NET Core MVCでstatic fileを公開する場合、基本的には用意されている Static File Middlewareを使うと便利です。以下のドキュメントに詳しく書いてあります。 Working with Static Files | Microsoft Docs が、このMiddlewareを使うとファイルは認証な…

2016年の振り返り

大晦日ですし、2016年を振り返ってみたいと思います。 仕事 MVP活動 登壇 執筆 Global Summit テクノロジ関連 C# Azure PowerShell on Linux や SQL Server on Linux その他 プライベートなど ダイエット 野球 最後に

Visual Studio Code からdocker 上で走るASP.NET Core アプリにリモートデバッグする

NOTES: clrdbgはvsdbgに置き換えられました。次の記事を参照してください。 tech.tanaka733.net Visual Studio Code Advent Calendarの18日目です。 qiita.com 今回の記事は先日のこの記事のVisual Studio Code版になります。 tech.tanaka733.net リモートデ…

ASP.NET Core で複数Webサーバーでセッションを共有するときは、IDistributedCacheとIDataProtectionに注意しないといけない話

ASP.NET Core Advent Calendar 13日目です。 qiita.com 初日にSignalRでエントリ書きましたが、もともと予定していたセッションについて簡単に追いかけてみましょう。ASP.NET Core でSessionを使う場合、まずはこのドキュメントを読むのがよいでしょう。 Man…

Visual Studio から AzureやWindows以外のdocker containerで走るASP.NET Core をリモートデバッグする

空いていたので予定を早めて Visual Studio Advent Calendar 12日目のエントリを書きます。 qiita.com Windows上のdockerやAzure Container ServicesであればVisual Studio Tools for Dockerを使えばVisual StudioからASP.NET Coreのアプリにリモートデバッ…

Linux でも C# 7 を使いたい

C# Advent Calendar 10日目の記事です。 qiita.com C# 7のリリースが近づいてきている(はず)のですが、専らC# 7の記事はVisual Studioで試しましたというのが多く、.NET Core on Linuxでは試せないのか?という疑問がありました。現時点では、.NET Core 1.0 …

Linux の dotnet restore は大文字HTTP_PROXYを認識しない、あるいは curlコマンドは大文字HTTP_PROXYを認識しない件

微妙にハマったので、書いておきます。.NET Core CLI のdotnet restoreコマンドをプロキシ環境下のLinux*1で使う場合、環境変数http_proxyは小文字で設定する必要があります。ちなみにこれはcurlコマンドでも同じです。ちなみにhttps_proxyもしくはHTTPS_PRO…

.NET Core on Linux の今年をふりかえってみる

.NET Core Advent Calendar 3日目です。 qiita.com 昨日のPowerShell on Linux に続いて、.NET Core on Linux (特に.NET Core on RHEL)の現状を、アプリをどうやって開発するのか?に焦点を置いて軽くふりかえってみたいと思います。 .NET Core のリリースと…

PowerShell on Linux ふりかえり

PowerShell Advent Calendar 2日目のエントリです。 qiita.com 今年は.NET Core on RHELを追っかけた一年だったので、その関連でPowerShell on Linuxの現状というか簡単な振り返りをしてみたいと思います。事の始まりはPowerShell のOSS化とLinuxへの対応が…

ASP.NET Core on Linux でも SignalR が使いたい

ASP.NET Core Advent Calendar一日目です。内容は直前で変えたのですが、Sessionまわりの話は空いている日のネタとして投下したいと思います。 qiita.com SignalR もASP.NET Core対応が進んでいます。 github.com ので現時点で動作するアプリをASP.NET Core…

MVP Summit のハッカソンで.NET Core CLIの拡張を作りました

MVP Global Summit 2016に参加して来たのですが、今年は木曜に行われるハッカソンまで参加してきました。ツアーで行くと木曜の朝出発するスケジュールなのでずっと参加できなあったのですが、今年は自分で予約したので参加できました。10個くらいのテーマが…

SQL Server on Linux を RHEL や OpenShift で動かしてみる

さて、SQL Server on Linuxがpublic releaseになりましたので blogs.technet.microsoft.com 早速、RHELやOpenShiftで動かしてみたいと思います。といっても、RHELで動かすのは手順通りやるとあっという間に動いてしまいます。 docs.microsoft.com ちなみに、…

.NET Core on RHEL で csproj をいじってみる

.NET Core に MSBuild がα版としてリリースされました。 blogs.msdn.microsoft.com ちなみに、これは同じタイミングでリリースされた.NET Core 1.1には同梱されておらず、.NET Core 1.0 の preview3 に同梱されています*1。で、先のブログのリンク先にダウン…

Connect(); 2016 での Linux関連の発表まとめ

ぐぐらびりてぃの低さで有名*1なConnect();の1日目のキーノートが終わりました。Linux関連*2での新機能等の発表をまとめてみました。 ニュース系 MicrosoftがLinux Foundationのプラチナメンバーに www.linux.com SamsungがMicrosoftと協力して、Tizen上で動…

Entity Framework Core で PostgreSQL のAutoIncrement列を使う場合の注意

Entity Framework Core でModel FirstでAutoIncrementな主キーを定義するときはモデルクラスをこのように定義すると思います。 public class ToDo { [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Key] public int Id { get; set; } [Required, M…

Visual Studio Tools for Docker が ASP.NET CoreのDockerデバッグ実行している仕組みを追ってみた

Docker for Windowsを使うと、Visual StudioからF5でコンテナ内にアプリをデプロイしてデバッグできるようになったという記事を見たのですが kiyokura.hateblo.jp 気になるのは、どうやってデバッグしているかということです。ポイントとしてはDockerとホス…

はてなブログProの更新単位を1年から2年にしようとしたら、カスタムドメインの設定が1日ちょっと吹き飛んでしまった話

先日、このブログを含め3つほどはてなブログProで運用しているブログのカスタムドメイン設定が消えて1日ちょっとPVが0になってしまいました。 同じ失敗をしないためにいきさつをまとめてみたいと思います。 はてなブログProの更新単位を変えるためには そも…

Azure PowerShell を Linux で使う (Preview版)

PowerShell が Open SourceになってLinuxでも動くようになりました。 blogs.msdn.microsoft.com Azure をLinux中心の環境で使っている場合、ポータルからではできなかったりスクリプトとして実行したい操作があると xplat Azure CLIを使っていたのですが、Az…

Visual Studio の古いマイナーバージョンをインストールしたい

最新の(安定版の)Visual StudioはVisual Studio 2015 Update3ですが、検証のためにVisual Studio 2013 Update1をインストールする必要ができました。が、Update1のインストーラーを実行すると勝手に更新を取得していきなりUpdate3をインストールするように…

Visual Studio Code で ASP.NET Core とTypeScript開発をセットアップしたい(未完)

Visual Studioを使って、ASP.NET Core で TypeScriptを使うセットアップについては公式のドキュメントがあります。 ASP.NET Core · TypeScript なのですが、Visual Studio Codeを使った場合のセットアップ方法が見つからなかったので試してみました。ただ、…

ASP.NET Core on Linux で Session Replication するにはNFSが必要そうだというお話

ASP.NET Core でSession Replication (Sessionを外部で管理して、複数台で動かしても、また再起動したあともSessionデータを利用できるようにする)をやろうと考えた時のお話です。まだ確信をもっているわけではないのですが、調べたことをまとめるのも兼ねて…

YAP(achimon)C::Asia Hachioji 2016 mid in Shinagawa で .NET Core on Linux について飛び入りトークしてきました

yapcasia8oji-2016mid.hachiojipm.org 2日目の日曜の朝に飛び入りトークしてきました。以下が資料になります。 doc.co .NET Core のRTMが6/27に決まったあと、そうだYAPCで話そうと思ったもののすでにセッションは締め切られていたので、飛び入りトークとし…

Microsoft MVPを再再々受賞しました

4年目になりました。カテゴリはVisual Studio and Development Technologies になります。 今年の4月からRed Hatに転職したこともあり、今後1年くらいで広めていきたいテクノロジーは大きく、.NET Core on RHELとRed Hat on Azure*1の二つです。まずは触って…

.NET Core on RHEL でSoftware Collectionsの有効化を永続化する

.NET Core on RHEL (Red Hat Enterprise Linux)はsclコマンドで有効化しますが、これはいったんログインするたびに有効化するコマンドを実行する必要があります。これをログイン時に自動で有効化する方法があります。 詳しくはこちらのドキュメントを参照し…

Eclipse Che Language Server版でASP.NET Coreプロジェクトを作成する

先日、Microsoft, Red Hat, CodeEnvyが協力して、「Language Services」と呼ばれるサービスにJSON-RPCベースなオープンな仕様のプロコトルを発表しました。Visual Studio Codeで使っているものを公開して、より汎用的に使えるようにしていきたいという流れの…

.NET Core on RHEL をインストールしようとして、有効なリポジトリIDではありませんといわれたら

昨日.NET Core on RHEL がリリースされました。インストールについては昨日のブログに書いた通り、こちらのページを見ればよいのですが、最初のコマンドでタイトルのようなエラーがでるケースがあります。 .NET - Powerful Open Source Development 英語環境…

.NET Core on RHEL がRTMされました 【速報版】

.NET Coreとしては長く待った感がありますが、昨年11月に発表された.NET Core on Red Hat Enterprise Linux(RHEL)に関しては早くもRTM出たかという印象です。というわけで日本時間の28日に.NET CoreがASP.NET Core, EntityFramework CoreなどとあわせてRTMさ…

bash で azure cli を補完したい

小ネタです。azure cliをbashで使っていて、補完きかねーなーと思っていたら、自分で設定してねとドキュメントにありました。 github.com ここにある2行を実行すれば終わりなんですが、bash-completion を入れている環境なら~/.bashrcに記述することなく、/e…

Ansible で Azure を操作する

Ansibleのバージョン2.1がリリースされましたが、その中でもAzureとWindows対応が一つの目玉になっています。 www.redhat.com www.ansible.com というわけでAnsibleを使ってAzureに仮想マシンを立ててみたいと思います。