ローカル端末で実行中のフロントエンド/バックエンドアプリの現在日時を変更する

時系列が関係あるような機能の動作確認をする際に、現在日時を変更したくなるケースがありますが、OSの時間を変更するとちょっと怖いです。 ローカル端末上で実行中のアプリだけに日時を変更する方法を記載します。 フロントエンド React.jsやVue.jsなどで作っているWebアプリケーションの日時を変更したいです。 new Date() した際の日時を変更する mockdate というライブラリを使います。 まずは、ライプラリをインストールします。 npm install -D mockdate # or yarn add -D mockdate あとは、main.tsなど、アプリを起動する処理の直前に以下を指定します。 import MockDate from "mockdate"; MockDate.set("2022-06-29 19:30:00" Continue Reading

Posted On :
Category:

GitLab CI + kaniko でDockerイメージをビルド

業務ではGITリポジトリとしてGitLabを使ってるのですが、ローカルPCでDockerイメージを作成する運用だと ローカルの変更が混じってしまう可能性がある イメージを作成するタイミングがあいまいだし、作成忘れがあったりする などの問題があり微妙だったので、GitLabにタグ(1.5.2など)をプッシュしたタイミングで、自動的にDockerイメージを作成してGCRにビルドさせることにしました。 少し前に 会社のブログ で kaniko を使うケースを紹介してくれていたので、やってみることにしました。 GitLabでDockerイメージをビルドする方法の候補 改めてGitLabの ドキュメント を見てみると、以下のように書いてあります。 There are three methods to enable the use of docker build and docker run duri Continue Reading

Posted On :
Category:

AirflowでDockerOperatorを動かす

Airflowは、ワークフローをプログラムで作成、スケジュール、および監視するためのプラットフォームです。仕事でAirflowを採用することにしたので、今回はAirflowをローカルPC上で動かして、DockerOperatorで任意のDockerコンテナを実行しつつ、必要な要素(DAG実行時のパラメータ指定とか環境変数渡しなど)を試していきたいと思います。 Airflowについて 公式のトップページから引っ張ってきただけですが、以下のような原則・特徴があるそうです。 原則 スケーラブル Airflowはモジュール化されたアーキテクチャを備えていて、Messageキューを使用して任意の数のワーカーを調整でき、無限に拡張できる 動的 AirflowのパイプラインはPythonで定義されており、動的にパイプラインを生成することができる 拡張可能 独自の演算子を簡単に定義し、ライブラリを拡張して Continue Reading

Posted On :
Category:

DockerのTips

Dockerに関するTipsを気がついたら追記していく予定。 ちなみにDocker Composeに特化したTipsは こちら を参照のこと DockerコンテナのIPアドレスを確認 まずは、対象のネットワーク名を取得する。 docker network ls NETWORK ID NAME DRIVER SCOPE 1e1234536b95 sample_default bridge local 次に、ネットワークおよびそのネットワークに所属するコンテナの詳細情報を取得する。 この実行結果だと172.19.0.2が対象コンテナのIPアドレスとなる。 docker network inspect sample_default [ { "Name": "sample_default", "Id": "xxxxxx&quot Continue Reading

Posted On :
Category:

Docker Compose上のNginxをHTTPS対応する

ローカル開発用にDocker Comnposeで動かしているNginxをHTTPS対応する必要が出てきたので、自作のSSL証明書を使って対応することにした。 opensslで秘密鍵、署名リクエスト、SSL証明書を作成 sslというフォルダを作成する mkdir ssl cd ssl 秘密鍵(KEY)を作成する 暗号にはRSA 2048ビットを使用する。 openssl genrsa 2048 > server.key 署名リクエスト(CSR)を生成する SSLサーバ証明書発行に必要なテキストデータで、認証局はこのテキストデータを元に内容を精査してSSL証明書を発行するらしい。(今回は自作するので適当でOK) openssl req -new -key server.key > server.csr > Country Name (2 letter code) []:81 > S Continue Reading

Posted On :
Category:

Docker ComposeのTips

Docker Composeは複数のDockerコンテナをまとめて立ち上げることができる便利なツールである。 いくつかのケースについて実例をあげながら設定方法を記載していこうと思う。 別docker-composeのコンテナを参照する 1つ目のdocker-composeでDBを、2つ目のdocker-composeでWebアプリを立ち上げて、WebアプリからDBを参照するケースを考える。 基本的には、networkで同一ネットワークに所属するように設定し、external_linksで外部コンテナにアクセスできるように設定すればよい。 DB用docker-compose.ymlの設定 version: '3' services: postgres: image: postgres:latest container_name: "database" Continue Reading

Posted On :