結論 Vector Asset Studioで追加する 方法 以下公式ドキュメント参考: developer.android.com
セッションベース認証について調べたことをまとめます。 セッションベース認証 概要 セッションベース認証は、主にセッションIDを用いて行う認証方式です。 基本的なフローは以下です。 まずユーザが認証画面で認証情報を入力しwebサーバに情報を送ります。w…
現象 以下のような記述のDockerfileを用意しアプリケーションをコンテナ化しgcloud run deployでCloud Run上にデプロイしたところ、特定のファイル(今回はinit.incファイル)がアップされていないことに気が付きました。 FROM php:7.0-apache # Configure PHP…
はじめに MySQLを用いたCRUDを行うSpringBootアプリケーションを、App Engineスタンダード環境にデプロイし、プライベートIPでCloud SQLへ接続を行う大枠の手順についてまとめます。 環境 アプリケーション環境 言語: Java8FW: SpringBootビルドツール: Mave…
はじめに Java8, SpringBootで作ったアプリをGoogle App EngineのJava8フレキシブル環境にデプロイしていたのですが、デプロイ先の環境をスタンダード環境に変更する必要がありました。これの手順についてメモします。 環境 以下アプリケーションの環境です…
SpringBootで作ったアプリを起動すると、以下のエラーが起こり起動に失敗する現象に遭遇しました。 Caused by: com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure この現象の原因と解決策についてメモします。 環境 言語:…
Linuxの負荷監視コマンドについてまとめます。 キャパシティプランニング(Capacity planning)とは、リソース不足によってシステムの運用に支障が出ないようにリソースを将来的に確保するための設計技法です。 具体的には、以下のようなリソースの状態を測定…
ステップシステム全体の設定ファイルユーザ毎の設定ファイル1. ログインシェル起動時/etc/profile-(2. Debian系のみ)/etc/bash.bashrc-3. ~/.bash_profileがある場合-~/.bash_profile4. ~ /.bash_loginがある場合-~/.bash_login5. ~/.profileがある場合-~/.p…
SUID SUID(Set User ID)とは、実行権のあるファイルに設定されている特殊なアクセス権のこと。 例えば、一般ユーザ(rootでないユーザ)が自身のパスワードを変更すると、この変更は/etc/passwdファイルに保存されます。そこで、/etc/passwdファイルのパーミシ…
Linuxの標準入出力について Linuxでは、データのストリーム(データの入出力に伴うデータの流れのこと)を扱うために以下のように、標準出力/標準出力/標準エラー出力の3つの経路(インターフェース)が用意されています. ファイル・ディスクリプタ番号入出力名 …
Originとは、URLのスキーム、ドメイン、ポートの3つによって定義され、それらが全て一致した場合に、その2つのオブジェクトは同じオリジンといいます。 ちなみに、https://example.com:8080 というURLがあった時、httpsをスキーム、example.comをドメイン、8…
Dockerを使ってRails6の環境を作り、docker-compose upで起動すると、以下のようなエラーが表示されました。 PG::ConnectionBad: could not connect to server: No such file or directoryIs the server running locally and acceptingconnections on Unix d…
Next.jsのプレリンダリングについて学んだので忘備録として残します。 プリレンダリングとは Next.jsにおいて、最も重要な概念はプリレンダリング(pre-rendering)です。 Next.jsは、デフォルトで全てのページでプリレンダリングします。これは、クライアント…
Dockerでコンテナ化したrailsアプリをproductionモード(本番環境)で起動する方法をメモします。 productionモードとして起動するには以下のような設定項目があります。 production用docker-compose.ymlを用意DB設定ファイルの編集(config/database.yml)secre…
タイトル通りの問題が起きて調べたのでメモします。 Action Textを導入したrailsアプリをproductionモードで実行したところ、Action Textを用いて実装した箇所がブラウザにロードされない事象が起きました。 解決策 以下のように、config/initializers/asset…
マスタリングTCP/IP 入門編 第6版 を読みました。 言わずと知れたバイブル的な存在ですよね。実は3年くらい前のIT業界で働き始めの頃に読んでみたことがあるんですが、書いていることのイメージが出来ず読むのが苦痛でしかなかった覚えがあります。あれから3…
達人に学ぶDB設計を読んだので学んだ内容をまとめます。 DB設計とは? データベース設計とは、アプリケーションで扱いたい事柄をデータベースで管理できるように、それら事柄を抽象化してデータモデルを作成していく作業です(データモデリング)。 データモデ…
随時更新します。 基本的な操作 コマンド意味w次の単語へe単語の最後へb前の単語の先頭へ0行頭へ$行末へggファイルの先頭へGファイルの最終行へ%マッチした文字へ移動C-f次のページへC-b前のページへyヤンク(コピー)Y行をヤンクpペーストP現在の位置にペース…
param is missing or the value is empty: 以下のようなviewとコントローラ(Strong Parameters)を書いていたところ、POST時にparam is missing or the value is empty: article というエラーが発生しました。コードの趣旨としては、articleモデルの属性であ…
問題 Rails on Railsでviewを書いている時に、以下のようにcssをレスポンシブ対応していたのですが、画面を480px以下にしてもスマホ向けのcssが適用されない現象が起きました。 header { color: white; } @media (max-width: 480px) { header { color: black…
はじめに ES6以降のモダンなJavaScript仕様について以前こちらの記事にまとめたのですが、個人的に知らなかったシンタックスなどあったので追加でまとめます。 桁埋め // ES2017から '7'.padStart(2, 0) // '07' '7'.padEnd(2, '#') // '7#' '7'.padEnd(6, '…
メタ文字一覧 メタ文字意味文字列 / 正規表現 => マッチする箇所.任意の1文字hello / h.llo => hello\w単語を構成する文字hello / h\wllo => hello\W単語を構成しない文字hello! / hello\W => hello!\s空白文字(改行,タブ文字..含む)I am / I\sam => I am\S…
フォーカス時のボーダー色を変えるにはoutlineを使う .text_box:focus { outline: 2px solid blue; background-color: #FFF; } outlineではradiusを変えられないので、outlineを非表示、borderを変える .text_box:focus { outline: none !important; border:…
以下のコマンドで調査可能 $ git log -S "調べたい文字列" --patch file_name.py
JavaScriptで絵文字を除外する正規表現のコードスニペット const regEmoji = new RegExp(/[\u2700-\u27BF]|[\uE000-\uF8FF]|\uD83C[\uDC00-\uDFFF]|\uD83D[\uDC00-\uDFFF]|[\u2011-\u26FF]|\uD83E[\uDD10-\uDDFF]/, 'g'); const removeEmoji = input => ( //…
Reactで画像をアスペクト比を維持して表示する方法メモ。 import Img from './images/img.png' const imgStyle = { object-fit: contain; } const ImgComponent = () => ( <img className="imgStyle" src={Img} alt="" /> ) object-fitは、置換要素(<img>や<video>)などの中身を、コンテナーにどのようにはめ込むかを設</video>…
'1000' であれば1000を返し、'山田太郎'であれば'山田太郎'を返す関数 const func = (value) => { const parsedValue = Number(value); if (isNaN(parsedValue)) return value; return parsedValue; }
↓のようなエラーでsshができずかなり苦しんだ。 $ ssh host_name user@xx.xxx.xxx.xxx: Permission denied (publickey,gssapi-keyex,gssapi-with-mic). 今回の原因は、そもそもsshキーのユーザが間違っていた、というもの。 上記エラーで考えられる理由は複…
↓のように()で関数をかこうと即時関数になります。即時関数とは、定義と同時に実行される関数のこと。 (function() { console.log('hello') })() 次のように引数を渡すこともできます。 (function(name) { console.log(`hello, ${name}`) })('taro') 以上、…
今回はJavaScriptで配列/オブジェクトの要素の追加 /変更 / 編集 をイミュータブル(非破壊的)に行う方法をまとめます。 イミュータブルな操作の基本 基本的には、元の配列やオブジェクトをシャローコピーし、そのコピーに対して操作を加える、というやり方を…