リソースを扱うコントローラのアクション名

アクション パス HTTPメソッド 説明 index /books /GET リソースの一覧を表示する show /books/123 GET リソースを追加する new /books/new GET リソースを作成する edit /books/news/123/edit GET リソースの属性を表示する create /books POST リソースを…

Railsでデータベースを作成する

データベースを作成します $ bin/rails db:create Bookモデルクラスを作成します。 $ bin/ralis g model book マイグレーションスクリプトを作成します。 db/migrateディレクトリ以下のxxxxxx_create_members.rbというファイルがあります。 このファイルをマ…

Railsのタイムゾーンを日本時間に変更する

config/application.rbのconfig.time_zone に、Tokyoを設定します。 module Asagao class Application < Rails::Application # Initialize configuration defaults for originally generated Rails version. config.load_defaults 5.2 config.time_zone = 'T…

pyenvを使ってPythonをインストールする

Homebrewを使って、pyenvをインストールします。 $ brew install pyenv $ echo 'export PYENV_ROOT=/usr/local/var/pyenv' >> ~/.bash_profile $ echo 'if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi' >> ~/.bash_profile $ source ~/.bash_…

Vueアプリケーションを作成する

Vue

Vue CLIをインストールします。 $ npm install -g @vue/cli $ npm install -g @vue/cli-service-global Vueプロジェクトを作成します。 $ vue create first_app Vueアプリケーションを実行します。 $ cd first_app $ npm run serve

Reactアプリケーションを作成する

node.jsをインストールします。その後、任意のディレクトリで以下のコマンドを実行します。 npxは、パッケージのダウンロードと実行を一度に行ってくれるコマンドラインのツールです。 $ npx create-react-app react_app npmを使う場合は、以下のコマンドを…

npmでインストールしたjQueryをHTMLファイルに組み込む

npmを使って、jqueryをインストールします。 $ npm install jquery --save jqueryを使ったサンプルスクリプトを作ります。 'use strict'; const $ = require('jQuery'); $(function () { $('h1').css('color', 'red'); }); このままでは、HTMLファイルに組み…

Gradleをインストールする

SDKMANを使って、Gradleをインストールします。 $ sdk install gradle Gradleでプロジェクトを作ります。 $ mkdir mybootgapp $ cd mybootgapp $ gradle init プロジェクトのタイプを確認するメッセージが表示されます。 Enterキーを押してください。 Select…

Mavenをインストールする

SDKMANを使って、Mavenをインストールします。 $ sdk install maven Mavenでプロジェクトを作ります。 $ mvn archetype:generate しばらくすると、以下のメッセージが表示されます。 Enterキーを押してください。 $ Choose a number or apply filter (format…

SDKMANをインストールする

SDKMANはJVM系のパッケージ管理ツールです。 SDKMANを使うと、GroovyやSpring Boot CLIなどのパッケージを簡単にインストールすることできるようになります。 sdkman.io 公式ページのガイドに従い、以下のコマンドを実行します。 $ curl -s "https://get.sdk…

Project Managerって

映画監督 Directorは、管理者以外に、指揮者や指導者みたいなニュアンスがあります。 一方、Project MangaerのManagerは管理者です。 Project Managerは、本来、映画監督のように、システムの全体像を描き、方針を伝え、導いていくスキルが必要なんだと思い…

OpenCVをインストールする

$ pip install opencv-python

rails new コマンドのオプション

オプション 説明 -B, --skip-bundle bundleコマンドを実行しない -C, --skip-action-cable Action Cableのファイルを生成しない -M, --skip-action-mailer Action Mailerのファイルを生成しない -T, --skip-test テスト関連のファイルを生成しない --skip-co…

パスワード認証 ユーザーのパスワードを暗号化する

PostgreSQL のパスワード認証で、パスワードを保管する方法は2種類あります。 データベース内にパスワードを保管する方法と、外部のファイルにパスワードを保管する方法です。データベース内にパスワードを保管する場合、初期の設定では、パスワードは平文で…

2019年下期の目標

おしごと編 プロジェクト終了にむけて、仕事の引継ぎをする 生活編 1日1回、振り返りをする(周りへの感謝と自分へのほめ) 活動編 12月までに、Ruby on Railsアプリケーションをvpsサーバで動かす 1週間に1回、ブログを書く 四半期に1回、もくもく会に参加す…

PostgreSQL 10 を CentOS 7 に yum インストールする

PostgreSQL公式リポジトリを追加します。 # yum -y localinstall https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm パッケージを確認します。 # yum info postgresql10-server PostgreSQL 10 が Pos…

IPアドレスのあとにあるスラッシュと数の意味

IPアドレスの設定方法が書かれた本などで、IPアドレスのあとにスラッシュと数が書かれているときがあります。 192.168.56.10/24 スラッシュと数は、IPアドレスのここまでがネットワークアドレスで、ここからホストアドレスであることを表しています。 この数…

Dockerfileの記述方法

命令 説明 FROM Dockerfileのベース・イメージ を指定します。 RUN コマンドを実行する命令です。コマンドを実行した結果得られたイメージは、 Dockerfile の次のステップで使われます。 WORKDIR Dockerfile で RUN 、 CMD 、 ENTRYPOINT 、 COPY 、 ADD 命…

2019年上期のふりかえり

いわしまん さんの抱負や活動に感銘を受けて、少しでも自分も成長できたらと思い、いわしまん さんの抱負を参考に書いてみました。 今回は、2019年上期のふりかえりをします。 iwasiman.hatenablog.com おしごと編 自分、他人を責めない、評価しない ★達成 …

Dockerのネットワーク

Dockerをインストールすると3つのネットワークが作成されます。 ブリッジネットワーク 単一のホスト内で構成されるネットワーク ホストネットワーク Dockerホストと同じネットワークインターフェースをコンテナで使用したい場合に使用するネットワーク ノン…

Automated Buildを設定する

GitHubにログインしてください。 トップページの [ New ] ボタンをクリックしてください。 Create a new repository ページが表示されます。 [ Repository name ] に、automated-build と入力し、 [ Create repository ] ボタンをクリックしてください。 タ…

CentOS7 に Docker Community Edition(CE) をインストールする

必要なパッケージをインストールします。 # yum -y install lvm2 device-mapper device-mapper-persistent-data device-mapper-event device-mapper-libs device-mapper-event-libs Dockerの古いバージョンをアンインストールします。 # yum -y remove docke…

Dockerイメージを管理するコマンド一覧

Dockerイメージを管理するコマンドです。 コマンド 説明 docker images ダウンロード済みのイメージの一覧を表示します。 docker ps -a 実行中、停止したコンテナの一覧を表示します。 docker inspect コンテナ名 or コンテナID 指定したコンテナの情報を表…

Go言語で簡単なWebサーバーを作ってみる

Go

以下の図のような、簡単なWebサーバーを作ってみます。 リクエストがWebサーバーに送信されると、要求されたURLをマルチプレクサ(多重通信の入り口 DefaultServeMux)が調べ、リクエストをハンドラにリダイレクトします。 ハンドラはリクエストから情報を取得…

サーバー証明書とは

サーバーの信頼性を確認するため、ブラウザはサーバーから、そのサーバーの持つサーバー証明書と呼ばれるものを取得します。 サーバー証明書は、X.509というフォーマットで記述され、拡張子は、.pemになります。 無料SSL証明書 Let’s Encryptをインストール…

分割統治法を使って、問題の原因を調べる

某ベンダーのWebアプリケーションフレームワークに会社固有の機能を追加したWebアプリケーション基盤の保守を行っています。 先日、Webアプリケーション基盤のメンテナンス画面でデータベースエラーが発生しているという問合せを受けて、調べ始めました。 こ…

Ruby on Rails をバージョン指定してインストールする

gemコマンドでバージョンを指定することでインストールできます。 $ gem install rails --version="5.2.0" #指定バージョンをインストール $ gem install rails --version="~>5.2.0" #5.2.X系の最新バージョンをインストール $ gem install rails --version=…

rbenvでRubyをインストールする

Mac Homebrewを使って、インストールします。 Homebrewのインストールは、macOS 用パッケージマネージャー — Homebrew を参照してください。 必要な拡張ライブラリopensslとreadlineをインストールします。 opensslはRuby on Railsを使ってアプリケーション…

コンテンツネゴシエーションとHTTPヘッダー

クライアント(ブラウザーなど) は、いくつかの HTTP ヘッダーを送信します。 これらのヘッダーは、クライアントが理解し、処理できるコンテンツの情報を設定します。 サーバーは、ヘッダーの設定を手がかりとして内部アルゴリズムが、クライアントに提供する…

Nginxのセキュリティ対策をする (ディレクティブ編)

随時更新します。 X-Content-Type-Options add_header X-Content-Type-Options nosniff;ブラウザはダウンロードしたコンテンツの種類を判定するのにContent-Typeヘッダを使います。 Internet Explorerは、さらにコンテンツの内容もチェックして、コンテンツ…