1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

コマンドチートシート

Last updated at Posted at 2021-04-02

はじめに

自分用にDocker, Rails, 基本のLinuxコマンドなど全部まとめてます。
雑多にメモを残してるだけなので、わかりづらいかもです。

めちゃめちゃ便利なサイト見つけた

↑Heroku, Docker, Git, CircleCIなど、主要コマンドとかほとんど載ってる気がします。
便利。

基本

1 2
マシンスペックの確認 % sw_vers`
CPU 物理コア数を確認 $ sysctl -n hw.physicalcpu_max
CPU 論理コア数を確認 sysctl -n hw.logicalcpu_max
物理メモリの総量を確認 sysctl hw.memsize

Docker

Docker公式リファレンスはこちら

復習用に用語を軽くまとめておきます
・Docker image: コンテナの元になるやつ
・Dockerfile: Docker imageを作るための設計書
・docker-compose.ymlとは?:サービスなど定義する YAML ファイルのことを「Compose ファイル」と呼ぶ。これを使わないと、コマンドを叩く回数が増えてとても面倒臭い事になる。

dockerfileのコマンドについて

FROM : 使用するイメージとバージョンを設定
RUN : コマンドの実行
WORKDIR : 作業ディレクトリを設定
COPY : ローカルのファイルをコンテナへコピー
ENTRYPOINT : 一番最初に実行するコマンドを設定
EXPOSE : コンテナがリッスンするport番号を設定
CMD : イメージ内部のソフトウェア実行

※CMD
DockerFile実行時にデフォルトで実行したいコマンドを記載する。デフォルトなのでDockerFile実行時の引数をもって上書き可能。

※ENTRYPOINT
DockerFile実行時に必ず実行したいコマンドを記載する。docker runするときに --entrypoint で上書き可能。

docker-compose.ymlのファイル解説(参考記事)

docker-compose.yml

version: "3.8"  # この「Compose ファイルの書式のバージョン」
services:       # 「サービス」を定義する項目
  web:            # "web" という名前で「サービス」を定義
    image: adminer  # "adminer" の「イメージ」を使用
    ports:          # ホストの「ポート番号」とコンテナーの「ポート番号」を対応付けを定義します
      - 8080:8080     # ホストの「ポート番号」 8080 とコンテナーの「ポート番号」 8080 を対応付けます
  db:             # "db" という名前で「サービス」を定義
    image: mysql    # "mysql" の「イメージ」を使用
    environment:    # コンテナーに「環境変数」を設定します
      # ↓ "MYSQL_ROOT_PASSWORD" という「環境変数」に "example" という値を設定します
      MYSQL_ROOT_PASSWORD: example
用途 command
Dockerにログインする docker login
起動 docker-compose up
停止 docker-compose down
DB作成 docker-compose run web rails db:create
DB更新 docker-compose run web rails db:migrate
コンテナ再起動 docker-compose restart
既存コンテナに入る $docker exec {コンテナ名}
railsコンテナ内のbashに docker-compose exec web bash
vueコンテナ内のbashに docker-compose exec vue bash
サーバー停止 docker-compose run web rm tmp/pids/server.pid
サーバー起動 docker-compose run web rails s
全コンテナ停止 docker stop $(docker ps -q)
全コンテナ削除 docker rm $(docker ps -q -a)
全イメージ削除 docker rmi $(docker images -q)
全ボリューム削除 docker volume rm $(docker volume ls -qf dangling=true)
滅びの呪文 docker-compose down –rmi all –volumes
立ち上がってるDockerコンテナの確認

activeコンテナのみ表示$ docker ps
activeじゃ無いのも表示$ docker ps -a

ここで表示されるSTATUSを確認すると、Exitedか(コンテナを出てるかどうか)が確認できる

Docker, docker-compose.ymlのバージョン確認

$ docker version
$ docker-compose version

手元にあるdocker imagesの確認

$ docker images

Dockerhubにあるimagesをローカルにpullしてくる

$docker pull {IMAGE名:TAG名}
例: $ docker pull hello-world:latest

docker imageからコンテナを新規作成

$ docker run
↑オプション何も付けずに実行するとコンテナを作成=>exitしちゃうからコンテナの中には入れない
runを利用する時は、テストの実行/ボリューム・コンテナに対するデータの追加・削除といった管理タスク

基本の型
$ docker run -it {IMAGE名:TAG名} {コマンド(runした後の実行コマンド)}
-it=コンテナ内でTerminal上に出力などを表示や入力できるようにするオプション

コンテナの名前つきでコンテナ立ち上げ。特に指定しないとdockerが勝手に名前をつける。
$ docker run --name {コンテナ名} -it {IMAGE名:TAG名} bash

docker-composeでコンテナを立ち上げる

$ docker-compose up -d
コンテナを停止する
$ docker-compose stop

既に作成済みのコンテナの再起動

docker-compose start

サーバーなど

指定のポート番号が何に使われてるか確認(8000のところを任意の番号に変更)

$ lsof -i:8000

Git

1 2
gitでバージョン確認 git --version
最終コミット後の変更ファイル・記述を確認 git diff
ブランチを新規作成&そのブランチに移動 git checkout -b branchname
ブランチを削除 git branch -d [ブランチ名]
リモートブランチ一覧を表示する git branch -r
強制push $ git push -f origin develop
履歴を残しつつ取り消す git revert コミットID
任意のpushまで巻き戻す git reset
pushの一覧を確認 git log --oneline
ローカルのaddを取り消す git reset HEAD .
ローカル上の変更を取り消す git checkout .
ローカル上で新規作成したファイルを取り消す git clean -df .
プルする git pull commitID
ログを見る git log
直前の○個だけログを見る git log -数字
ログで各コミットの変更点も表示する git log -p

2.3 Git の基本 - コミット履歴の閲覧

git resetのオプションについて

1 2
取り消すのはcommit $ git reset --soft コミットID
取り消すのはcommitとaddとソース $ git reset --hard コミットID
取り消すのはcommitとadd $ git reset --mixed コミットID
直前のコミットを消す コミットIDのとこをHEAD^
git reset --hardを取り消したい。 resetする前まで--hardで戻ればok

間違えて作業進めちゃったけど後からブランチを切りたい!って時

未コミットの場合
※未コミットなら$ git checkout -b new_branch_nameだけでokだけど、時々エラーが出るらしいので、エラーが出た時の対処法

terminal.
//コミットされていない変更内容を一時退避する
$ git stash
$ git checkout <切り替えたいブランチ名>
//直前に一時退避した変更内容を取り出す
$ git stash pop

作業したけど作業する前の状態まで戻したい!時

terminal.
//ローカル上の変更を取り消す
 $ git checkout . 

・参照【Git】ブランチを切り替え忘れて作業してしまった時の対処法

リモートで消されたブランチを消したい時

//以下どちらかを実行する

//fetchかpullに --pruneオプションをつける
$ git fetch/pull --prune
$ git remote prune origin

・参照:リモートで消されたブランチが手元で残ってしまう件を解消する

直前のpushを取り消したい時

ローカルでrevertを使って取り消して、それをリモートへ反映する。

terminal.
//ログを確認してcommit IDを取得
$ git log
//コミットメッセージの修正はしないので--no-editオプションをつけてrevertする
$ git revert commitID --no-edit
$ git push

Gitコマンド早見表
Gitでいろいろ取り消したい
gitでのヤバイ!を取り消す方法

gitが変でpushできなくなった時に初期化して最初から全部やり直す方法

$rm -rf .git
$git init
Initialized empty Git repository in 〜/.git/ 
$git log 一応きちんと完全初期化できているか確認)
fatal: your current branch 'master' does not have any commits yet
$git add .
$git commit -m "First commit"
$git remote add origin https://github.com/〜
$git push -u origin master
1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?