Dockerを起動させてRailsを動かす
Dockerfileを作成
FROM ruby:2.5 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs RUN mkdir /myapp // 変更 WORKDIR /myapp // 変更 COPY Gemfile /myapp/Gemfile // 変更 COPY Gemfile.lock /myapp/Gemfile.lock // 変更 RUN bundle install COPY . /myapp // 変更
docker-compose.yamlを作成
version: '3' services: web: build: . command: bundle exec rails s -p 3000 -b '0.0.0.0' volumes: - .:/myapp // 変更 ports: - "3000:3000"
docker-composeを起動
docker-compose run web rails new docker-compose build docker-compose up
ブラウザ上でアクセスできるか確認
docker-composeを停止
docker-compose down
DBのマイグレーションが上手くいかない
問題
マイグレーションしようとしてもエラーが出る
$ docker-compose -f ./migration-docker-compose.yml run liquibase migrate db db_migration.yaml [DEBUG] db_migration.yaml Unexpected error running Liquibase: Could not acquire change log lock. Currently locked by e2463b55fa2d (172.18.0.7) since 9/26/18 3:53 AM
解決
DELETE FROM DATABASECHANGELOGLOCK;
Git リモートにあるブランチをローカルに持ってくる方法
# リモートにあるブランチを確認 git branch -a # 持ってきたいブランチをfetch git fetch origin remote-branch # checkout git checkout -b new-branch origin/remote-branch
DOMとは
DOM
DOMは「Document Object Model」の略
HTMLやXML文書をプログラムから利用するための仕組みのこと
DOMはツリー状の構造で、HTML文書にアクセスして情報を得たりするためのもの
Node
ツリー状の構造は、結束点や末端のことをNodeという
DOMでは、Nodeのことをelementと呼ぶ
同期処理・非同期処理とは
同期処理
普通プログラムは、上から順番に処理を行う
処理1
↓
処理2
↓
処理3
処理を終わるまで待って次に進む方式を同期処理という
非同期処理
「非」同期処前理は、同期処理ではないということ
したがって、非同期処理とは、前の処理が終わる前に次に進む方式
時間のかかる重たい処理でよく用いられる
時間差で実行される処理には、コールバック関数を指定しておく
コールバック関数とは、処理が終わった時に呼び出される関数のこと