magのOSS備忘録

使ったOSSソフトウェアについて書いていきます。

Keycloak (Quarkus版) でアクセスログを出力し、任意の名前でローテートする

概要 Quarkus版のKeycloak (バージョン17からのデフォルト) にて、ログローテーションしながらアクセスログを出す方法を記載する。 本エントリでは、logrotateなどの外部プログラムを使用せず、Keycloakの設定のみで行う方法を扱う。 このエントリの結論とし…

Spring Bootアプリケーションの実行時にJava VMにVM引数を渡す方法

概要 Spring Boot Maven PluginでSpring Bootアプリケーションを起動する際に、Java VMにVM引数を渡す方法を記載する。 動機 Spring Bootを使った開発では、通常EclipseやIntelliJ IDEAなどのIDEを使うことが多い。筆者はEclipseを使うことが多いが、Eclipse…

Keycloakの管理コンソールでIPアドレスごとのアクセス制御を行う

概要 KeycloakはWildFly上のアプリケーションとして実装されており、自身に対する、IPアドレスベースのアクセス制御などの機能はWildFlyが提供している。 WildFlyのサブシステムであるUndertowの設定を行うことで、アクセス制御を実施できる。 動機 Keycloak…

pacmanでよく使うコマンド

概要 pacmanを使ってパッケージ管理を行う際のオプションをメモしておく。主に自分用。 動機 pacmanはArch LinuxやMSYS2で使用するが、それほど頻度は高くないために忘れてしまいがち。 いくつものパッケージマネージャを使っているので、オプションを混同し…

Mavenで実行可能なjarファイルを作成する(CLIアプリケーションを作成する)

概要 JavaでCLIアプリケーションを作りたい。 実行時にclasspathやエントリポイントを指定せずに実行できるようにしたい。 Mavenを使って、ライブラリなどのパッケージ取得し、ビルドを行い、実行可能なjarファイルを作るまでの手順を記載する。 目次 概要 …

システム起動時のPostgreSQLの起動をネットワーク有効化まで遅延させる

概要 OSの起動時にて、ネットワークが有効化したあとにPostgreSQLを起動したい。ネットワークが有効になるまでは、PostgreSQLがlistenしようとsocketにbindしても失敗してしまうためである。 systemdを使ってシステムを起動している場合に、PostgreSQLの起動…

CentOS Stream 8にKeycloakをインストールする

本記事の目標 本記事では、CentOS Stream 8にKeycloakをインストールして動作させるまでを扱う。 Keycloak自体の設定は扱わない。 目次 本記事の目標 目次 実行環境 データベースサーバーの構築 PostgreSQL Yum Repository登録 PostgreSQLのインストール Pos…

Windows版GNU EmacsのTRAMPで秘密鍵を指定してssh接続する (plink使用)

動機 TRAMPを使ってリモートサーバのファイルを編集しようと思ったときに, SSHで公開鍵認証方式でログインしようとしたら, 色々大変だったのでやり方を残す. 複数のサーバに接続する場合, ユーザ名, ホスト名(もしくはIPアドレス), 秘密鍵ファイルを組み合わ…

flycheckでC/C++のプロジェクトごとの設定を行う

動機 通常, C/C++(に限ったことではないが)プロジェクトではそれぞれで定義するヘッダファイルをインクルードするため, 全体的に共通の設定を行うと余計な設定まで含んでしまうことになる. プロジェクトAでインクルードするファイルは, プロジェクトBではイ…

EmacsでフォントにCamingoCodeを使用する

EmacsでCamingoCodeを使用するように設定する. 日本語部分にはRicty Diminishedをあてる. 実行環境 Windows 10 Pro 64bit版 (バージョン 1703) emacs 25.3.1 (x86_64) CamingoCode, Ricty Diminishedフォントのインストール 下記よりそれぞれのフォントをダ…

Windows(MSYS2)でirony-modeをセットアップする

動機 Irony-ModeをWindows環境で使用する方法としてMSYS2を使用するか, MSVCを使用するかを選べるとのことで, 今回はMSYS2を使用してみることにした. Cygwinは… 基本的にSetting up irony mode on Windows · Sarcasm/irony-mode Wiki · GitHubに従って実施し…

Wiresharkの独自プラグインで既存のDissectorを呼び出す

独自にLuaで定義したプラグイン(Dissector)にてJSON形式データをパースしたかったので, 既存のDissectorを利用した. 下記のように呼び出せばよい. -- -- プロトコルを作成する. -- json_proto = Proto("json_proto", "Description: JSON Test Protocol") -- …

Rustの開発環境を整える(Windows, Emacs)

前提 2017/8現在の状況で, Windows上のEmacsにてRustの開発環境を整える. 開発のスピードが速く, 以前は必要だった設定が不要になっていることが多い. そのため, 出来るだけメンテナンスされている各ツールのマニュアルに従った方がよい. が, そもそも何をし…

Proxy内でCargoを使ったツールインストール時のエラー対策(Windows環境)

Cargoを使ってツール(rustfmt, racer)をインストールしようとしたときのメモ。 ユーザ認証が必要なProxy環境でCargoを利用したときに設定した内容を残す。 環境 Windows 7 (32bit) Cargo 0.20.0 cargo install racerなどがエラーになる Proxyを通過出来るよ…

fishでhistoryの表示に日付を追加する

動機 bash等の他のシェルでは, historyコマンドの出力に日付や時間を追加することができる. これをfishで行おうとしたときに, 調べるのに少し時間がかかったので手順を残す. 前提 fish 2.4からhistoryコマンドに実装されたオプションを使う方法のため, fish …

cygwin1.dllに依存しないNTEmacsをCygwin上でビルドしてみる

※実験です。 動機 正直何をしたいのか分からないタイトルになった. NTEmacsはMSYS2を使ってビルドされることが一般的だが, Cygwinでも出来ないかと試してみた. 以前にビルドしたCygwinに依存するNTEmacsでは, 非力なWindowsマシンにおいてflycheck等で遅延が…

Cygwin上でEmacs 25.1をビルドする

動機 CygwinにあるEmacsパッケージではWindows IMEが事実上使えないため, IMEパッチを当てたバイナリが欲しい. Cygwinを使用しているので, Cygwinに依存してしまっても問題なく, またMSYS2等を新たにインストールしたくない. どうせなら最新版(2016/10/9時点…